Converter.ThumbnailWatermark Property HTML5/Flash Uploader PHP

Supported technologies: Adobe FlashHTML 5

Gets or sets a watermark of the thumbnail.

Syntax

PHP Initialize
public function getThumbnailWatermark() {
}

public function setThumbnailWatermark($value) {
}

Property Value

Type: string

The watermark of the thumbnail. Watermark string syntax is described in the Remarks section. For HTML5 uploader, you can also pass a JSON object with the same names as used for the string.

If an empty string is specified, watermark will not be drawn on the thumbnail.

Default value is "".

Remarks

The watermark string consists of several variables separated with a semicolon:

variable1=value1;variable2=value2;...

The following variables are supported:

VariableDescription
Text

Watermark text. If the text contains semicolon or quotation mark characters enclose it in single (' ') or double (" ") quotes. Moreover, quotation marks (both single ' and double ") inside the text should be escaped with a backslash. For example, to get a Andrew's Photos; Vacation text, set this variable as follows:

Text="Andrew\'s Photos; Vacation"

Note

If both text and image are used as watermarks, the text will always be rendered over the image.

Default value is an empty string.

When the text watermark is specified, the following parameter also makes sense:

  • FillColor
  • Font
  • Size
  • Style
  • Angle
  • Tiled
  • Position
  • OffsetX
  • OffsetY
  • Opacity
  • BackgroundColor
  • BackgroundMarginWidth
  • BackgroundMarginHeight
Tiled

Boolean value specifying whether you want to draw a single line at the specified position (false) or tile this string across the entire image (true). In the latter case, you can control the distance between each watermark item using the BackgroundMarginWidth and BackgroundMarginHeight.

Default value is false. Ignored by Flash uploader.

Angle

A number specifying the rotation angle for the watermark.

Default value is 0. Ignored by Flash uploader.

When

A string specifying when to apply the watermark operation - before it resizes the image or after. Possible values are: AfterResize or BeforeResize.

Default value is BeforeResize. Ignored by Flash uploader.

FillColor

Font color. It has the following syntax: 0xrrggbb RGB value.

Default value is an empty string (the fill is transparent).

Font

Font name. This font should be installed on the client machine. That is why it is highly recommended to use some generic font like Arial, Verdana, etc.

Default value is Arial.

Size

Font size (in pixels).

Default value is 12.

Style

Font style. The following styles are supported:

  • Bold
  • Italic
  • Underlined

You can specify several styles separated with a comma. Example:

Style=Bold,Italic

Default value is an empty string (regular font is used).

ImageUrl

Url to an image that will be used as the watermark. For HTML5 uploader, it may be an inline image (using the data:URL).

Note

If both text and image are used as watermarks, the text will always be rendered over the image.

Default value is an empty string.

When the image watermark is specified, the following parameter also makes sense:

  • Width
  • Height
  • Position
  • OffsetX
  • OffsetY
  • Opacity
Width

Width of the image that will be used as the watermark. The image will be resized to the specified dimensions as an ordinary thumbnail, that is, the image can only be downsized, and its proportions are kept.

Default value is an empty string (actual image width is used).

Height

Height of the image that will be used as the watermark. The image will be resized to the specified dimensions as an ordinary thumbnail, i.e. the image can only be downsized and its proportions are kept.

Default value is an empty string (actual image height is used).

Position

Watermark position. It can take one of the following values:

  • TopLeft - watermark will be drawn in the top left corner of an image.
  • TopCenter - watermark will be drawn in the center of the top of an image.
  • TopRight - watermark will be drawn in the right top corner of an image.
  • CenterLeft - watermark will be drawn in the center of the left edge of an image.
  • Center - watermark will be drawn in the center of an image.
  • CenterRight - watermark will be drawn in the center of the right edge of an image.
  • BottomLeft - watermark will be drawn in the bottom left corner of an image.
  • BottomCenter - watermark will be drawn in the center of the bottom of an image.
  • BottomRight - watermark will be drawn in the bottom right corner of an image.

Default value is BottomRight.

OffsetX

Horizontal offset (in pixels) of the watermark relative to the position it is anchored to (according to the Position variable).

Note

If horizontal position is left or center, coordinates direction is left-to-right. If it is right, coordinates direction is flipped to right-to-left.

Default value is 0 (no offset).

OffsetY

Vertical offset (in pixels) of the watermark relative to the position it is anchored to (according to the Position variable).

Note

If vertical position is top or center, coordinates direction is top-to-bottom. If it is bottom, coordinates direction is flipped to bottom-to-top.

Default value is 0 (no offset).

Opacity

Watermark opacity percentage. If 0, the watermark is totally transparent. If 100, the watermark is opaque. Values between 0 and 100 will produce watermark with various level of transparency.

This value works for all elements of watermark. There is no way to configure different opacity for background, text outline and text fill.

Default value is 100.

BackgroundColor

Background color. It has the following syntax: 0xrrggbb RGB value.

Default value is an empty string (the background is transparent).

BackgroundMarginWidth

Width of additional space outside of the watermark filled with background (in pixels).

Default value is 0.

BackgroundMarginHeight

Height of additional space outside of the watermark filled with background (in pixels).

Default value is 0.

Note

The watermark string is case insensitive.

Though you can set both image and text watermarks at the same time, it makes sense to use only one of them. For text watermarks the only required variable is Text. Here is an example of watermark string which will draw green semi-transparent italic text Aurigma in the bottom left corner of an image:

PHP
$uploader = new ImageUploaderFlash("Uploader1");
$converters = &$uploader->getConverters();
$converter = new Converter();
$converter->setMode("*.*=Thumbnail");
$converter->setThumbnailFitMode("Fit");
$converter->setThumbnailWatermark("Text=Aurigma;Opacity=75;FillColor=0x00ff00;Position=BottomLeft;Style=Italic;Size=30");
$converters[] = $converter;

For image watermarks ImageUrl, Width, and Height are required. Here is an example of semi-transparent logo drawn in the top tight corner of the image:

PHP
$uploader = new ImageUploaderFlash("Uploader1");
$converters = &$uploader->getConverters();
$converter = new Converter();
$converter->setMode("*.*=Thumbnail");
$converter->setThumbnailFitMode("Fit");
$converter->setThumbnailWatermark("ImageUrl=http://localhost/watermark.png;Width=86;Height=63;Position=TopRight;Opacity=50");
$converters[] = $converter;

Alternatively, you can use the JSON object instead of a string:

JavaScript
var u = $au.imageUploaderFlash({
    id: 'Uploader1',
    converters: [{mode: '*.*=Thumbnail',
	thumbnailWatermark: {
		ImageUrl: 'http://localhost/watermark.png',
		Width: 86,
		Height: 63,
		Tiled: true,
		When: 'AfterResize',
		Opacity: 50}
});

However this syntax is not compatible with Flash uploader. If you want to use the object with Flash, the simplest way is to convert it to the string using the jQuery's $.param as follows:

JavaScript
		var a = 45; // Angle
		var watermarkObj = { Text: 'Aurigma', Angle: a};
		var watermarkString = decodeURIComponent($.param(wsettings)).replace(/&/g, ";");
		// ... pass this string to the thumbnailWatermark property.
	

This property makes sense only if the Mode property has the Thumbnail value.

See Also

Reference

Manual