イメージの保存方法

【ご質問】
Curlで画面上に表示した特定の部品をJPEGにして保存する方法を教えてください。

【回答】
以下の手順にて作成することが可能です。

①GraphicオブジェクトをGraphic-to-PixmapプロシジャにてPixmapに変換し
②変換されたPixmapをImageData.save-to-urlにて画像保存することが可能です。

Ver.8ではPDFファイルの生成も可能でございます。(print-graphic-pdf)
こちらですと、Graphicオブジェクトを直接PDFファイルに保存できますので
実装が簡単かと思います。 併せてご検討頂ければと思います。

 

{curl 8.0 applet}

||グラフィックオブジェクト
{let g:VBox = {VBox
                  width  = 5cm ,
                  height = 5cm,
                  background = “blue”
              }
}

||グラフィックオブジェクトの表示
{value
    {VBox
        g,
        {HBox
            {CommandButton
                label = “JPEG”,
                {on Action do
                    let image-data:ImageData = {ImageData}
                   
                    ||グラフィックオブジェクトをPixmapに変換する
                    def pixmap = {Graphic-to-Pixmap g}
                   
                    ||ImageDataクラスにPixmapを設定する。
                    set image-data.pixmaps = {new {Array-of Pixmap},pixmap}

                    ||画像ファイルに変換する。
                    {image-data.save-to-url {url “./sample.jpeg”} , “image/jpeg”}  
                }
            },
            {CommandButton
                label = “PDF”,
                {on Action do
                    {print-graphic-pdf g,{url “./sample.pdf”}}
                }
            }
        }
    }
}