Recipe settings

A recipe is a text string with script settings that follows a specific syntax. It contains a number of settings, separated by a ; (semicolon) and an optional blank space for readability. All settings must always be specified and in the following order (the name of the setting in bold isn’t written in the recipe, only the value):

  1. fancy: If set to true, the script will simulate a scan with visible scan mask edges. If you like a clean cropped look, set this to false.
  2. halation: If set to truethe script will render halation on the film rebate adjacent to bright border pixels.
  3. burn_negative_edges: If set to true the edges of the negative (adjacent to the rebate) will be burned and the contrast increased.
  4. transparent_matte: If set to true scanner artefacts will be omitted and the outside of the black scanner mask will be transparent.
  5. artifacts: If set to true the script will add artifacts at the outside of the mask border, often seen with real film as a consequence of the scanning and editing process. Set it to false for a crisper look.
  6. rebate_grain: If set to true Poserframes will render a grain-like noise on the rebate. Set it to false if you intend to add grain to your image after Poserframes has run. If your image already has grain, there is a risk of interference effects around the edges. Instead, the option halation, that only adds grain to the halation effect on the rebate, might be a better choice.
  7. adjust_blackpoint: Adjusts the black point of the rebate, from an automatic attempt at matching the visual black point of the image. Accepts whole numbers, both positive and negative, between -60 and 60. For instance, 5 will systematically make the rebate five levels lighter and -5 five levels darker.
  8. mask_variant_2x3: The style of scanner mask to use with 2:3 images. The script comes with ten styles, numbered from 1 to 10. If set to auto, a random style will be used.
  9. mask_variant_4x3: The style of scanner mask to use with 4:3 images. The script comes with five styles, numbered from 1 to 5. If set to auto, a random style will be used.
  10. mask_variant_6x7: The style of scanner mask to use with 6:7 images. The script comes with three styles, numbered from 1 to 3. If set to auto, a random style will be used.
  11. mask_variant_4x5: The style of scanner mask to use with 4:5 images. The script comes with two styles, numbered from 1 to 2. If set to auto, a random style will be used.
  12. mask_variant_square: The style of scanner mask to use with square images. The script comes with three styles, numbered from 1 to 3. If set to auto, a random style will be used.
  13. negative_variant_square: The look of the negative, where 1 has a look drawn from Rolleiflex square formats and 2 from Hasselblad square formats. If set to auto, a random style will be used.
  14. negative_variant_4x3: The look of the negative, where 1 has a look drawn from Pentax 4x3 negatives, 2 from Contax 4x3 negatives and 3 a look from Hasselblad 4x3 negatives. If set to auto, a random style will be used.
  15. border_width_2x3: Border width (whole number/integer value) for 35mm format, when fancy = false.
  16. border_width_4x3: Border width (whole number/integer value) for 4x3 format, when fancy = false.
  17. border_width_6x7: Border width (whole number/integer value) for 6x7 format, when fancy = false.
  18. border_width_4x5: Border width (whole number/integer value) for 4x5 format, when fancy = false.
  19. border_width_square: Border width for square format, when fancy = false.
  20. short_side_factor: Factor that changes the thickness of the short side of 2:3, 6:7 and square formats, when fancy = false. Given as a percentage, from 1 to 999, where 100 equals the same thickness as the long side.
  21. movement_min_long: Defines the floor (lowest value) for all possible image movements of the long edge from a centered position, given as a whole number from 0 to 100.
  22. movement_max_long: Defines the ceiling (highest value) for all possible image movements of the long edge from a centered position, given as a whole number from 0 to 100.
  23. movement_min_short: Defines the floor (lowest value) for all possible image movements of the short edge from a centered position, given as a whole number from 0 to 100.
  24. movement_max_short: Defines the ceiling (highest value) for all possible image movements of the short edge from a centered position, given as a whole number from 0 to 100.
  25. movement_direction: When set to random the script may move the image relative to the mask in all four directions (up/down/left/right). When set to bottomright it will only move it towards the bottom right corner and when set to topleft towards the top left corner.
  26. matte_top: The thickness of the top matte, in percentages of the original image height.
  27. matte_right: The thickness of the right matte, in percentages of the original image width.
  28. matte_bottom: The thickness of the bottom matte, in percentages of the original image height.
  29. matte_left: The thickness of the left matte, in percentages of the original image width.
  30. filmburn: If set to true a film burn effect will be rendered, while false swithches the effect off.
  31. ragged_filmburn: If set to true the rendered burn effect will have a jagged edge, similar to torn paper. If set to false the burn edge will be smooth.
  32. filmburn_min_reach: The minimum percentage of the image that the film burn effect may cover.
  33. filmburn_max_reach: The maximum percentage of the image that the film burn effect may cover.
  34. force_format: If set to one of the formats 2x3, 4x3, 6x7, 4x5 or square the automatic format detection will be overridden and negative variant and a mask variant in that format will be stretched to fit your image. This setting is optional.

The full geeky syntax for a recipe looks like this:

[true|false]; [true|false]; [true|false]; [true|false]; [true|false]; [true|false|halation]; [-60-60]; [1-10]; [1-6]; [1-3]; [1-2]; [1-3]; [1-2]; [1-3]; [1-99]; [1-99]; [1-99]; [1-99]; [1-99]; [0-400]; [0-100]; [0-100]; [0-100]; [0-100]; [random|bottomright|topleft]; [1-100]; [1-100]; [1-100]; [1-100]; [true|false|monochrome]; [true|false]; [1-100]; [1-100](; [2x3|4x3|4x5|6x7|square])?

An actual recipe for the default settings, ready to copy-and-paste into Poserframes, looks like this:

true; true; true; false; true; false; 0; 1; 1; 1; 1; 1; 1; 1; 20; 20; 20; 20; 20; 100; 0; 40; 0; 40; random; 12; 12; 12; 12; false; true; 10; 30