1

私はこれを数回経験しましたが、理解できません。メソッド DrawPath が System.OutOfMemoryException をスローしています。

pen.DashPattern が実際に System.OutOfMemoryException もスローしていることを確認したので、ダッシュ パターンを設定しましたが、それを修正してもエラーは回避されませんでした。

using (var pen = new Pen(Color.Black,1.0f))
{
    pen.DashPattern = new[]{1.0f};
    pen.Transform = context.ReverseTransform;
    try
    {
        using (var temporaryPath = new GraphicsPath(path.PathPoints, path.PathTypes))
        {
            context.Graphics.DrawPath(pen, temporaryPath);
        }
    }
}

ここでの助けは素敵です!前もって感謝します!

4

1 に答える 1

1

Pen と Path オブジェクトのプロパティを破棄していることを考えると、これが問題の根本的な原因である可能性はほとんどありません。それはラクダの背中を壊し、氷山をひっくり返しました...わかります。PathPointsとはいえ、Tigran がコメントで述べたように、配列の大きさを知っておくと役に立ちます。

優れたプロファイラーを入手し (無料試用版があるRedGate の ANTS メモリ プロファイラーを使用します)、アプリのペースを試し、メモリ使用量を増やしてから、プロファイラーの結果を使用して実際の原因を絞り込みます。さらに詳しい情報や結果をお知らせください。喜んでお手伝いさせていただきます。

于 2011-08-30T18:38:54.247 に答える