标签: drawimage

如何在C#中从代码后面显示PictureBox

我知道我的问题听起来很基本,但我搜遍了整个地方,一无所获.这是我的代码:

public MainWindow()
{
    InitializeComponent();

    Map newMap = new Map();
    newMap.setMapStrategy(new SmallMapStrategy());
    newMap.createMap();


    System.Windows.Forms.PictureBox pictureBox1 = new System.Windows.Forms.PictureBox();
    pictureBox1.Paint += new System.Windows.Forms.PaintEventHandler(newMap.grid[3].afficher);

}
Run Code Online (Sandbox Code Playgroud)

这是一个功能:

public override void afficher(object sender, PaintEventArgs e)
{
    e.Graphics.DrawImage(squareImage, pos_x, pos_y, 50, 50);
}
Run Code Online (Sandbox Code Playgroud)

squareImage是与Drawing.Image对应的属性.pos_x和pos_y是自定义int32属性.

我想要的是在运行我的应用程序时看到图像...

c# wpf system.drawing picturebox drawimage

4
推荐指数
1
解决办法
2万
查看次数

画布未绘制图像

我只是想弄清楚如何在画布上绘制图像。我遵循了有关W3学校的教程,但是当我自己尝试时,它似乎无法正常工作。我将下面的代码复制并粘贴到HTML文件中,并且图像从不加载到画布中。我将图片下载到同一目录中。我一直在四处询问,并上网查找,但似乎没人知道问题出在哪里。我正在使用chrome(版本29.0.1547.76 m)的更新版本。

<!DOCTYPE html>
<html>
<body>

<p>Image to use:</p>
<img id="scream" src="img_the_scream.jpg" alt="The Scream" width="220" height="277">

<p>Canvas:</p>
<canvas id="myCanvas" width="250" height="300" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.</canvas>

<script>

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var img=document.getElementById("scream");
this.ctx.drawImage(img,10,10);

</script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript canvas drawimage

4
推荐指数
1
解决办法
8478
查看次数

使用html5画布将图像剪辑为多边形的可重用功能

猜猜帖子的标题可能需要编辑,但是现在我不知道问题出在哪里.我在这里和其他地方阅读了类似问题的页面和答案.One Stack Overflow答案特别接近,但我不明白.

我想要一个函数,在画布上以所需的坐标绘制多边形,并用从文件加载的一些背景图像填充它们(足够大,不需要平铺).三角形可以用于测试.显然我应该使用drawImage和clip,并为多边形赋予边框,我可以为剪辑和笔划重用相同的路径.显然我应该保持秩序

- define path
- save
- clip
- drawImage
- restore
- stroke.
Run Code Online (Sandbox Code Playgroud)

还可以在某处读取一次加载图像就足够了.(如果你想让我引用所有这些假设的来源,我会寻找我看到它们的位置.大部分都在Stack Overflow上)

HTML是空的

<body onload = "main ();"></body>
Run Code Online (Sandbox Code Playgroud)

第一种方法,假装浏览器将等待图片加载:

var ctx, img;
var image_path = 'bg.jpg';

function main () {

    var CANVAS_SIZE = 600;
    var view_field_cnv = document.createElement ('canvas');
    view_field_cnv.width  = CANVAS_SIZE;
    view_field_cnv.height = CANVAS_SIZE;
    view_field_cnv.style.border = "1px solid";
    document.body.appendChild (view_field_cnv);
    ctx = view_field_cnv.getContext ('2d');

    img = document.createElement ('img');
    img.src = image_path;

    place_triangle (0, 0);
    place_triangle (300, 300);
    place_triangle (500, 500);
    place_triangle (0, …
Run Code Online (Sandbox Code Playgroud)

javascript canvas onload drawimage clip

4
推荐指数
1
解决办法
3077
查看次数

为什么 Graphics::DrawImage 不能按预期拉伸图像?

我正在制作一个重载TableLayoutPanel,它绘制了一些花哨的边框,但由于某种原因,调用Graphics::DrawImage没有按预期工作。当我拉伸它时,它似乎淡出我的 1x10 像素源图像:

替代文字

这是进行渲染的函数:

void GTableLayoutPanel::RenderSides(Graphics^ g, array<Drawing::Image^>^ sideImages)
{
    if( sideImages )
    {
        if( sideImages->Length < 4 )
        {
            throw gcnew System::ArgumentException(String::Format("Not enough images supplied to render sides (expected 4 but only got {0})", sideImages->Length));
        }

        int borderSize = sideImages[0]->Height;
        g->DrawImage(sideImages[0], Rectangle(borderSize, 0, this->Width-borderSize*2, borderSize));
        g->DrawImage(sideImages[1], Rectangle(this->Width-borderSize, borderSize, borderSize, this->Height-borderSize*2));
        g->DrawImage(sideImages[2], Rectangle(borderSize, this->Height-borderSize, this->Width-borderSize*2, borderSize));
        g->DrawImage(sideImages[3], Rectangle(0, borderSize, borderSize, this->Height-borderSize*2));
    }
}
Run Code Online (Sandbox Code Playgroud)

.net windows c++-cli drawimage winforms

3
推荐指数
1
解决办法
2683
查看次数

Windows 7中的HTML5 Canvas drawImage问题,但仅限于Firefox

我正在开发一个程序有问题(你可以在www.energematrice6.com/gview2上看到它)

星系观察者在6个不同的层面上绘制星星.后面层工作正常(使用简单的笔划命令).前3个图层使用drawImage()功能获取保存的图像并将其绘制到画布(使用函数starGradDraw和starGradDraw2).

当程序首次执行并保存到对象变量(基本上只是缓冲区)时,这些图像由另一个函数创建.

一切都在我的家用电脑,笔记本电脑,我妻子的电脑,以及几乎所有其他机器上都可以正常测试(或者让朋友测试一下).

当我尝试在我的工作计算机上使用Firefox 10.0.2打开它时(我在家中使用的版本相同),前三层星星是空白的.我能想到的另一个不同之处是我的家用电脑都没有使用64位操作系统或特别是Windows 7.

其他一切似乎仍然在程序中正常工作,并且firebug没有弹出任何错误.它只是没有绘制图像(或暂停程序).我真的不确定下一步该尝试什么.

有任何想法吗?

(如果你愿意的话,我可以粘贴一些代码,但程序超过千行,我不确定问题出在哪里或者它只能在这台机器上出错.)

javascript html5 canvas drawimage

3
推荐指数
1
解决办法
1154
查看次数

优化 javascript canvas 以大规模绘制微小物体

我一直在开发一款游戏,该游戏需要在每一帧中渲染和旋转数千个非常小的图像(20^20 px)。提供了示例片段。

我已经使用了我所知道的所有技巧来加快速度以提高帧速率,但我怀疑我还可以做其他事情来优化它。

目前的优化包括:

  • 用显式转换替换保存/恢复
  • 避免比例/尺寸转换
  • 明确目标大小而不是让浏览器猜测
  • requestAnimationFrame 而不是 set-interval

已尝试但示例中未出现:

  • 将对象批量渲染到其他屏幕外画布,然后稍后编译(性能降低)
  • 避免浮点位置(由于放置精度而需要)
  • 在主画布上不使用 alpha(由于 SO 片段渲染而未在片段中显示)

//initial canvas and context
var canvas = document.getElementById('canvas');
    canvas.width = 800; 
    canvas.height = 800;
var ctx = canvas.getContext('2d');

//create an image (I) to render
let myImage = new OffscreenCanvas(10,10);
let myImageCtx = myImage.getContext('2d');
myImageCtx.fillRect(0,2.5,10,5);
myImageCtx.fillRect(0,0,2.5,10);
myImageCtx.fillRect(7.5,0,2.5,10);


//animation 
let animation = requestAnimationFrame(frame);

//fill an initial array of [n] object positions and angles
let myObjects = [];
for (let i = 0; i <1500; i++){ …
Run Code Online (Sandbox Code Playgroud)

javascript optimization canvas drawimage

3
推荐指数
1
解决办法
1158
查看次数

如何使用图形库C#在图像上绘制小图像?

当我尝试使用图形库C#在另一幅图像上绘制图像时,它会缩放较小的图像并覆盖第一个图像:

  public Form1()
    {   
        //InitializeComponent();
        read_file();
        InitializeComponent1();
        SetStyle(ControlStyles.Opaque, true);
        // theImage = new Bitmap("F:/4th year/1st Term/sensor network/proj/reconstructscene/reconstructscene/images/tryImage.jpg");
        theImage2 = new Bitmap("F:/4th year/1st Term/sensor network/proj/reconstructscene/reconstructscene/images/1.jpg");
        // theImage = new Bitmap(newImage);
        theImage = new Bitmap("F:/4th year/1st Term/sensor network/proj/reconstructscene/reconstructscene/images/tryImage.jpg");
    }
    protected override void OnPaint(PaintEventArgs e)
    {
        Graphics g = e.Graphics;
        //e.Graphics.SmoothingMode = SmoothingMode.HighQuality;
        //e.Graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
        //e.Graphics.PixelOffsetMode = PixelOffsetMode.HighQuality; 
          g.DrawImage(theImage, ClientRectangle);
        // Create pen.
        g.FillRectangle(new SolidBrush(Color.Red), 50, 50, 50, 50);
        RectangleF recto = new System.Drawing.RectangleF(50, 50, 50, 50);
        Pen blackPen = new Pen(Color.Black,1); …
Run Code Online (Sandbox Code Playgroud)

.net c# graphics drawimage

2
推荐指数
1
解决办法
5426
查看次数

未捕获的类型错误:drawImage 类型错误

我是 HTML5 和 canvas 元素的新手,在过去的几周里我一直在努力更好地理解它。Uncaught TypeError: Type error无论如何,当我尝试将红色方块从此代码http://jsfiddle.net/kmHZt/10/更改为此图像http://i.imgur.com/k73egsW.png时,我得到了。但当我尝试时,我总是明白这一点Uncaught TypeError: Type error。这是我目前的代码http://jsfiddle.net/cCDFs/

如果您需要我更好地解释一些事情,请尽管询问。

html javascript canvas drawimage

2
推荐指数
1
解决办法
6477
查看次数

为什么 context.drawImage() 在 html canvas 中不起作用?

我试图将图像文件“sticky.png”放入画布框中,但我得到的只是一块空白画布。谁能指出我做错了什么和/或给我有效的代码?

<canvas id="myCanvas" width="200" height="100"
style="border:1px solid #000000;">
</canvas>

<body>

<script>

var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var sticky = new Image();
sticky.onload = function() {
context.drawImage(sticky, 0, 0);
sticky.src = "sticky.png";
};


</script>

</body>
Run Code Online (Sandbox Code Playgroud)

html javascript canvas drawimage

2
推荐指数
1
解决办法
1万
查看次数

C ++ WinApi将图像.jpg绘制到新窗口?

我是Windows API的新手。使用Winapi教程中提供的一些Windows示例代码:

Graphics.DrawImage(Image *,const Rect)方法

我正在寻找打开.jpg图像并将其绘制到我创建的新窗口中。问题是我不确定如何在VOID Example_DrawImage9(HDC hdc)现有窗口中使用该方法。我的第一个本能是case WM_PAINT在回调过程中调用它,并hdc从那里使用,但是图像不显示。我怎么知道正确hdc的供应?我应该在哪里调用该方法?

#include <windows.h>
#include "stdafx.h" 
#include <objidl.h>
#include <gdiplus.h>

using namespace Gdiplus;
#pragma comment (lib,"Gdiplus.lib")

//*************************************************** added for gdiplus
HWND hEdit;

//************************************************how do I use this method   with the window I have created below?
VOID Example_DrawImage9(HDC hdc){
    Graphics graphics(hdc); // Create an Image object.
    Image image(L"C:/Users/Me/Desktop/fuzz.jpg"); // Create a Pen object.
    Pen pen(Color(255, 255, 0, 0), 2); // Draw the original source …
Run Code Online (Sandbox Code Playgroud)

c++ graphics winapi window drawimage

2
推荐指数
1
解决办法
2743
查看次数