비트 맵에 형상 그리기 (Avalonia)

프레데릭 호프

내 질문은 매우 간단합니다. a Avalonia.Media.Geometry에을 그려 Avalonia.Media.Bitmap결과 이미지를 Steam에 저장할 수있을뿐만 아니라 ImageBrush?

에서 System.Drawing네임 스페이스 하나는 단순히 부를 수 Graphics.FromImage(mySystemDrawingBitmap);얻을 Graphics다음 원하는 기하학 무엇이든 그릴 수 있습니다 개체를.

Avalonia에서 이와 유사한 쉬운 접근 방식이 있습니까? 호출 RenderTargetBitmap메서드가 있기 때문에 유망 해 보이는 문서 에서 호출 것을 파헤 CreateDrawingContext쳤지 만 IVisualBrushRenderer작동하려면 매개 변수로 인스턴스가 필요합니다 . ImmediateRenderer말한 인터페이스를 구현 하는 것으로 보이는 것이 있지만 Avalonia.VisualTree.IVisual생성자에서 매개 변수로 자체 가 필요 하며이 단계 RenderTargetBitmap에서 무작위로 필요한 객체의 엄청난 오버 헤드가있는 것처럼 보이므로 내 문제에 대한 유용성이 의심됩니다. 실제로 원하지 않거나 필요하지 않은 IVisual인스턴스를 비트 맵에 그리기 위해 더미 인스턴스 를 만들지는 않을 것 입니다. 끔찍한 코드 냄새가납니다.

Sooo : Avalonia.Media.Geometry( Geometry.Parse()예를 들어로 만든) 렌더링을 Avalonia.Media.Bitmap. 당신은 어떻게되어 실제로 그것을 어떻게해야?

낄낄 웃음
void RenderToFile(Geometry geometry, Brush brush, string path)
{
    var control = new DrawingPresenter()
    {
        Drawing = new GeometryDrawing
        {
            Geometry = geometry, Brush = brush,
        },
        Width = geometry.Bounds.Right,
        Height = geometry.Bounds.Bottom
    };

    RenderToFile(control, path);
}

void RenderToFile(Control target, string path)
{
    var pixelSize = new PixelSize((int) target.Width, (int) target.Height);
    var size = new Size(target.Width, target.Height);
    using (RenderTargetBitmap bitmap = new RenderTargetBitmap(pixelSize, new Vector(96, 96)))
    {
        target.Measure(size);
        target.Arrange(new Rect(size));
        bitmap.Render(target);
        bitmap.Save(path);
    }
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

비트 맵에 형상 그리기 (Avalonia)

분류에서Dev

Android에서 비트 맵 그리기 속도 향상

분류에서Dev

화면에 비트 맵 그리기

분류에서Dev

WPF의 창에 비트 맵 그리기

분류에서Dev

비트 맵에 Winforms 그리기

분류에서Dev

AsyncTask에서 비트 맵 그리기

분류에서Dev

OpenCV, Android : 비트 맵에 선 그리기

분류에서Dev

오디오 파형을 비트 맵에 그리는 방법

분류에서Dev

비트 맵에서 그림 상자로 이미지 만들기

분류에서Dev

VB.NET 그림 상자에서 장치 독립적 인 비트 맵 그리기

분류에서Dev

그래픽 정의되지 않은 그리기 대상 비트 맵 C #

분류에서Dev

6502 어셈블리에서 비트 맵 그리기

분류에서Dev

Android Java : 비트 맵에 폴리 라인 그리기

분류에서Dev

캔버스의 오른쪽 상단에 비트 맵을 그리는 방법

분류에서Dev

iOS에서 다양한 유형의 비트 맵 처리

분류에서Dev

다른 그림 상자에 동일한 비트 맵

분류에서Dev

비트 맵 사각형에서 원의 지름 가져 오기

분류에서Dev

Pygame에 비트 맵 이미지 그리기

분류에서Dev

캔버스에 비트 맵을 선으로 그리기

분류에서Dev

OpenGL을 사용하여 VideoFrame에 비트 맵 그리기

분류에서Dev

캔버스 이미지 비트 맵에 원터치 그리기

분류에서Dev

캔버스에서 경로를 따라 비트 맵 그리기

분류에서Dev

CP-1252 문자에서 비트 맵 글꼴 그리기

분류에서Dev

CP-1252 문자에서 비트 맵 글꼴 그리기

분류에서Dev

터치 할 때마다 ImageView에 비트 맵 그리기-Android

분류에서Dev

c # 다른 하나 위에 비트 맵 그리기

분류에서Dev

안드로이드에서 비트 맵의 색상을 변경하기 위해 비트 맵 픽셀을 반복

분류에서Dev

ILNumerics ILPanel 비트 맵으로 그리기?

분류에서Dev

Antroid 5 비트 맵 그리기 문제

Related 관련 기사

  1. 1

    비트 맵에 형상 그리기 (Avalonia)

  2. 2

    Android에서 비트 맵 그리기 속도 향상

  3. 3

    화면에 비트 맵 그리기

  4. 4

    WPF의 창에 비트 맵 그리기

  5. 5

    비트 맵에 Winforms 그리기

  6. 6

    AsyncTask에서 비트 맵 그리기

  7. 7

    OpenCV, Android : 비트 맵에 선 그리기

  8. 8

    오디오 파형을 비트 맵에 그리는 방법

  9. 9

    비트 맵에서 그림 상자로 이미지 만들기

  10. 10

    VB.NET 그림 상자에서 장치 독립적 인 비트 맵 그리기

  11. 11

    그래픽 정의되지 않은 그리기 대상 비트 맵 C #

  12. 12

    6502 어셈블리에서 비트 맵 그리기

  13. 13

    Android Java : 비트 맵에 폴리 라인 그리기

  14. 14

    캔버스의 오른쪽 상단에 비트 맵을 그리는 방법

  15. 15

    iOS에서 다양한 유형의 비트 맵 처리

  16. 16

    다른 그림 상자에 동일한 비트 맵

  17. 17

    비트 맵 사각형에서 원의 지름 가져 오기

  18. 18

    Pygame에 비트 맵 이미지 그리기

  19. 19

    캔버스에 비트 맵을 선으로 그리기

  20. 20

    OpenGL을 사용하여 VideoFrame에 비트 맵 그리기

  21. 21

    캔버스 이미지 비트 맵에 원터치 그리기

  22. 22

    캔버스에서 경로를 따라 비트 맵 그리기

  23. 23

    CP-1252 문자에서 비트 맵 글꼴 그리기

  24. 24

    CP-1252 문자에서 비트 맵 글꼴 그리기

  25. 25

    터치 할 때마다 ImageView에 비트 맵 그리기-Android

  26. 26

    c # 다른 하나 위에 비트 맵 그리기

  27. 27

    안드로이드에서 비트 맵의 색상을 변경하기 위해 비트 맵 픽셀을 반복

  28. 28

    ILNumerics ILPanel 비트 맵으로 그리기?

  29. 29

    Antroid 5 비트 맵 그리기 문제

뜨겁다태그

보관