Graphics g = pictureBox1.CreateGraphics(); img = Image.FromFile(@"V:\test.jpg"); Point[] pt = {new Point(0, 0), new Point(90, 30), new Point(20, 100)}; // (100, 0)にimgを描画 g.DrawImage(img, new Point(100, 0)); // (0, 0), (90, 30), (20, 100)から平行四辺形を作成して描画 g.DrawImage(img, pt); // (0, 0)に100×100のサイズでimgを描画 g.DrawImage(img, new Rectangle(0, 0, 100, 100)); // (100, 0)にimgを描画 g.DrawImage(img, 100, 0); // (0, 0), (90, 30), (20, 100)から平行四辺形を作成してimgの(0, 0)から(200, 200)までを描画 g.DrawImage(img, pt, new Rectangle(0, 0, 200, 200), GraphicsUnit.Pixel); // 1. (0, 0)にimgを描画 g.DrawImage(img, new Point(0, 0)); // 2. 平行四辺形を作成して描画 g.DrawImage(img, pt); // 3. 1のPointF型 g.DrawImage(img, new PointF(10.0F, 10.0F)); // 4. 2のPointF型 g.DrawImage(img, ptF); // 5. 場所とサイズを指定 g.DrawImage(img, new Rectangle(0, 0, 50, 50)); // 6. 5のRectangleF型 g.DrawImage(img, new RectangleF(0.0F, 0.0F, 50.0F, 50.0F)); // 7. 3をx, y分解 g.DrawImage(img, 10.0F, 10.0F); // 8. 1をx, y分解 g.DrawImage(img, 10, 10); // 9. 2と5の合成 g.DrawImage(img, pt, new Rectangle(0, 0, 50, 50), GraphicsUnit.Pixel); // 10. 4と6の合成 g.DrawImage(img, ptF, new RectangleF(0.0F, 0.0F, 50.0F, 50.0F), GraphicsUnit.Pixel);
// 11. srcRectangleで切り取ってdstRectangleへ拡大縮小 g.DrawImage(img, new Rectangle(0, 0, 200, 200), new Rectangle(0, 0, 50, 50), GraphicsUnit.Pixel); // 12. 11のRectangleF型 g.DrawImage(img, new RectangleF(0.0F, 0.0F, 200.0F, 200.0F), new RectangleF(0.0F, 0.0F, 50.0F, 50.0F), GraphicsUnit.Pixel); // 13. 指定した位置に指定したサイズで g.DrawImage(img, 50.0F, 50.0F, 100.0F, 100.0F); // 14. 指定した位置に指定したRectangleで切り取って g.DrawImage(img, 50.0F, 50.0F, new RectangleF(30.0F, 30.0F, 100.0F, 100.0F), GraphicsUnit.Pixel); // 15. 13のInt型 g.DrawImage(img, 50, 50, 100, 100); // 16. 14のInt型 g.DrawImage(img, 50, 50, new Rectangle(30, 30, 100, 100), GraphicsUnit.Pixel); // 17. 9にimgAttrを追加 g.DrawImage(img, pt, new Rectangle(30, 30, 100, 100), GraphicsUnit.Pixel, imgAttr); // 18. 17のFloat型 g.DrawImage(img, ptF, new RectangleF(30.0F, 30.0F, 100.0F, 100.0F), GraphicsUnit.Pixel, imgAttr); // 19. 17にコールバック追加 g.DrawImage(img, pt, new Rectangle(30, 30, 100, 100), GraphicsUnit.Pixel, imgAttr, DrawImageAbort); // 20. 18にコールバック追加 g.DrawImage(img, ptF, new RectangleF(30.0F, 30.0F, 100.0F, 100.0F), GraphicsUnit.Pixel, imgAttr, DrawImageAbort);
// 21. 19にcallbackData追加 g.DrawImage(img, pt, new Rectangle(0, 0, 200, 200), GraphicsUnit.Pixel, imgAttr, DrawImageAbort, 0); // 22. 20にcallbackData追加 g.DrawImage(img, ptF, new RectangleF(30.0F, 30.0F, 100.0F, 100.0F), GraphicsUnit.Pixel, imgAttr, DrawImageAbort, 0); // 23. x, y, width, heightを指定して画像の一部分を描画 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10.0F, 10.0F, 70.0F, 70.0F, GraphicsUnit.Pixel); // 24. 23のint版 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10, 10, 70, 70, GraphicsUnit.Pixel); // 25. 23にimgAttr追加 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10.0F, 10.0F, 70.0F, 70.0F, GraphicsUnit.Pixel, imgAttr); // 26. 24にimgAttr追加 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10, 10, 70, 70, GraphicsUnit.Pixel, imgAttr); // 27. 25にcallback追加 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10.0F, 10.0F, 70.0F, 70.0F, GraphicsUnit.Pixel, imgAttr, DrawImageAbort); // 28. 26にcallback追加 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10, 10, 70, 70, GraphicsUnit.Pixel, imgAttr, DrawImageAbort); // 29. 27にIntPtr追加 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10.0F, 10.0F, 70.0F, 70.0F, GraphicsUnit.Pixel, imgAttr, DrawImageAbort, ptr); // 30. 28にIntPtr追加 g.DrawImage(img, new Rectangle(0, 0, 200, 200), 10, 10, 70, 70, GraphicsUnit.Pixel, imgAttr, DrawImageAbort, ptr);