在阅读Graphics32文档后,我找不到使用图层的一个客观例子。德尔福 - Graphics32,绘制多个透明PNG作为watermak
只想组成以下图片:
- 1层 - 背景图像(JPG)(800×600)
- 二层 - 透明PNG作为帧边界(800×600)
- 层3 - 透明PNG与25°旋转(90x90)
右下角这是预期的结果:
// uses => GR32, GR32_Layers, GR32_Png, GR32_Image;
procedure TMain.Button1Click(Sender: TObject);
var
// src, dest: TPNGObject; <-- another frustrating try
// r: TRect;
bmp: TBitmap32;
png: TPortableNetworkGraphic32;
rlayer: TCustomLayer;
img1, img2, img3: TImgView32;
begin
bmp := TBitmap32.Create;
bmp.Assign(imgPreview.Picture); // TImage obj already have a JPG loaded
img1 := TImgView32.Create(nil);
img1.Bitmap := bmp;
img2 := TImgView32.Create(nil);
img2.Bitmap.LoadFromFile('C:\\layer2.png');
img3 := TImgView32.Create(nil);
img3.Bitmap.LoadFromFile('C:\\watermark.png');
rlayer := TCustomLayer.Create(nil);
rlayer.LayerCollection.Add(img1.Layers.Items[0]); // [DCC Error] Incompatible types: 'TLayerClass' and 'TCustomLayer' ????
...
我如何添加一个新图层,收藏?毕竟,我怎么能保存这个?
我正在使用德尔福2007年(不支持本机PNG) - 我正在阅读图层示例的源代码来尝试理解这个概念。谢谢! –