Components | All | New | MacOS | Windows | Linux | iOS | ||||
Examples | Mac & Win | Server | Client | Guides | Statistic | FMM | Blog | Deprecated | Old |
DynaPDF.ReplaceImage
Replaces an image with another image.
Component | Version | macOS | Windows | Linux | Server | iOS SDK |
DynaPDF | 7.5 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
Parameters
Parameter | Description | Example | Flags |
---|---|---|---|
The PDF reference returned from DynaPDF.New. | |||
ImageIndex | The index of the image to replace. From 0 to DynaPDF.GetImageCount-1. |
$index | |
Image | The new image. Can be container or native file path. |
Images::ImageContainer | |
ImageIndex | The index of the image. This is for a multi picture tiff file to pick the image. Default is 1 for first image. |
1 | Optional |
Colorspace | The color space to use. Can be DeviceRGB, DeviceCMYK, DeviceGray, CalGray, CalRGB, Lab, ICCBased, Pattern, Indexed, Separation, DeviceN or NChannel. Default is DeviceRGB. |
"DeviceRGB" | Optional |
ColorSpaceHandle | The color space handle. Can be empty if you want to use device colorspace. |
"" | Optional |
Flags | The flags. Can be number or text with various flags. Can be set to DeleteAltImages, DeleteMetadata, DeleteOCG and/or DeleteSoftMask. |
"DeleteAltImages¶DeleteMetadata" | Optional |
Result
Returns OK or error.
Description
Replaces an image with another image.The resolution, aspect ratio, color space and so on can be freely chosen. However, note that this function does not change the output position or size. If the aspect ratio of the new image is different, then it will be stretched or shrunken to fit into the output rectangle.
The parameter CS specifies the destination color space into which the image should be converted or saved, if the image is already defined in that color space. CSHandle must be the handle of that color space if a non-device space is used. The will be ignored for devices spaces.
The function works in the very same way as DynaPDF.InsertImage with the following differences:
- The color of an image mask cannot be set or changed because this would require changes on the content stream in which the image is used. An image mask will be created if the image color depth is 1 bit and if color key masking is enabled (see SetUseTransparency()). SetUseTransparency() should normally be set to false before calling this function.
Needs DynaPDF Lite license.
See also ReplaceImage function in DynaPDF manual.
Examples
Replace image:
# Initialize DynaPDF if needed
If [ MBS("DynaPDF.IsInitialized") ≠ 1 ]
Perform Script [ “InitDynaPDF” ]
End If
# Start new PDF session
Set Variable [ $pdf ; Value: MBS("DynaPDF.New") ]
# Import pages
Set Variable [ $r ; Value: MBS("DynaPDF.OpenPDFFromContainer"; $pdf; Replace Image::Input PDF) ]
Set Variable [ $r ; Value: MBS("DynaPDF.ImportPDFFile"; $pdf; 1) ]
# Replace Image
Set Variable [ $r ; Value: MBS("DynaPDF.ReplaceImage"; $pdf; 0; Replace Image::New Image) ]
# Save PDF
Set Field [ Replace Image::Output PDF ; MBS("DynaPDF.Save"; $pdf) ]
# Cleanup
Set Variable [ $r ; Value: MBS( "DynaPDF.Release"; $pdf ) ]
See also
- DynaPDF.GetImage
- DynaPDF.GetImageCount
- DynaPDF.Initialize
- DynaPDF.InsertImage
- DynaPDF.IsInitialized
- DynaPDF.New
- DynaPDF.OpenPDFFromContainer
- DynaPDF.Release
- DynaPDF.Save
- DynaPDF.SetGStateFlags
Release notes
- Version 7.5
- Added DynaPDF.ReplaceImage function.
Example Databases
Blog Entries
FileMaker Magazin
This function checks for a license.
Created 30th September 2017, last changed 15th September 2020