![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include <errno.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <strings.h>#include <time.h>#include <zlib.h>#include <glib/gstdio.h>#include "pdf.h"#include "common/math.h"#include "common/utility.h"
Include dependency graph for common/pdf.c:Macros | |
| #define | _XOPEN_SOURCE 700 |
| #define | PACKAGE_STRING darktable_package_string |
| #define | SKIP_SPACES(s) {while(*(s) == ' ')(s)++;} |
Functions | |
| int | dt_pdf_parse_length (const char *str, float *length) |
| int | dt_pdf_parse_paper_size (const char *str, float *width, float *height) |
| static void | _pdf_set_offset (dt_pdf_t *pdf, int id, size_t offset) |
| dt_pdf_t * | dt_pdf_start (const char *filename, float width, float height, float dpi, dt_pdf_stream_encoder_t default_encoder) |
| static size_t | _pdf_stream_encoder_ASCIIHex (dt_pdf_t *pdf, const unsigned char *data, size_t len) |
| static size_t | _pdf_stream_encoder_Flate (dt_pdf_t *pdf, const unsigned char *data, size_t len) |
| static size_t | _pdf_write_stream (dt_pdf_t *pdf, dt_pdf_stream_encoder_t encoder, const unsigned char *data, size_t len) |
| int | dt_pdf_add_icc (dt_pdf_t *pdf, const char *filename) |
| int | dt_pdf_add_icc_from_data (dt_pdf_t *pdf, const unsigned char *data, size_t size) |
| dt_pdf_image_t * | dt_pdf_add_image (dt_pdf_t *pdf, const unsigned char *image, int width, int height, int bpp, int icc_id, float border) |
| dt_pdf_page_t * | dt_pdf_add_page (dt_pdf_t *pdf, dt_pdf_image_t **images, int n_images) |
| void | dt_pdf_finish (dt_pdf_t *pdf, dt_pdf_page_t **pages, int n_pages) |
Variables | |
| static const char * | stream_encoder_filters [] = {"/ASCIIHexDecode", "/FlateDecode"} |
| #define _XOPEN_SOURCE 700 |
| #define PACKAGE_STRING darktable_package_string |
| #define SKIP_SPACES | ( | s | ) | {while(*(s) == ' ')(s)++;} |
References MAX, dt_pdf_t::n_offsets, and dt_pdf_t::offsets.
Referenced by dt_pdf_add_icc_from_data(), dt_pdf_add_image(), dt_pdf_add_page(), dt_pdf_finish(), and dt_pdf_start().
|
static |
References dt_pdf_t::fd.
Referenced by _pdf_write_stream(), and dt_pdf_add_icc_from_data().
|
static |
References dt_pdf_t::fd.
Referenced by _pdf_write_stream().
|
static |
References _pdf_stream_encoder_ASCIIHex(), _pdf_stream_encoder_Flate(), DT_PDF_STREAM_ENCODER_ASCII_HEX, and DT_PDF_STREAM_ENCODER_FLATE.
Referenced by dt_pdf_add_image().
| int dt_pdf_add_icc | ( | dt_pdf_t * | pdf, |
| const char * | filename | ||
| ) |
References dt_pdf_add_icc_from_data(), and dt_read_file().
| int dt_pdf_add_icc_from_data | ( | dt_pdf_t * | pdf, |
| const unsigned char * | data, | ||
| size_t | size | ||
| ) |
References _pdf_set_offset(), _pdf_stream_encoder_ASCIIHex(), dt_pdf_t::bytes_written, dt_pdf_t::fd, dt_pdf_t::next_id, and size.
Referenced by dt_pdf_add_icc(), and write_image().
| dt_pdf_image_t * dt_pdf_add_image | ( | dt_pdf_t * | pdf, |
| const unsigned char * | image, | ||
| int | width, | ||
| int | height, | ||
| int | bpp, | ||
| int | icc_id, | ||
| float | border | ||
| ) |
References _pdf_set_offset(), _pdf_write_stream(), dt_pdf_image_t::bb_height, dt_pdf_image_t::bb_width, dt_pdf_image_t::bb_x, dt_pdf_image_t::bb_y, bpp, dt_pdf_t::bytes_written, dt_pdf_t::default_encoder, dt_pdf_t::fd, height, dt_pdf_image_t::height, dt_pdf_image_t::name_id, dt_pdf_t::next_id, dt_pdf_t::next_image, dt_pdf_image_t::object_id, dt_pdf_image_t::outline_mode, dt_pdf_t::page_height, dt_pdf_t::page_width, dt_pdf_image_t::size, stream_encoder_filters, width, and dt_pdf_image_t::width.
Referenced by _create_pdf(), and write_image().
| dt_pdf_page_t * dt_pdf_add_page | ( | dt_pdf_t * | pdf, |
| dt_pdf_image_t ** | images, | ||
| int | n_images | ||
| ) |
References _pdf_set_offset(), dt_pdf_image_t::bb_height, dt_pdf_image_t::bb_width, dt_pdf_image_t::bb_x, dt_pdf_image_t::bb_y, dt_pdf_t::bytes_written, dt_pdf_t::dpi, dt_pdf_t::fd, height, dt_pdf_image_t::height, MIN, dt_pdf_image_t::name_id, dt_pdf_t::next_id, dt_pdf_image_t::object_id, dt_pdf_page_t::object_id, dt_pdf_t::page_height, dt_pdf_t::page_width, dt_pdf_image_t::rotate_to_fit, dt_pdf_page_t::size, width, and dt_pdf_image_t::width.
Referenced by _create_pdf(), and write_image().
| void dt_pdf_finish | ( | dt_pdf_t * | pdf, |
| dt_pdf_page_t ** | pages, | ||
| int | n_pages | ||
| ) |
References _pdf_set_offset(), dt_pdf_t::bytes_written, dt_pdf_t::fd, gmt, dt_pdf_t::next_id, dt_pdf_page_t::object_id, dt_pdf_t::offsets, PACKAGE_STRING, size, and dt_pdf_t::title.
Referenced by _create_pdf(), free_params(), and write_image().
| int dt_pdf_parse_length | ( | const char * | str, |
| float * | length | ||
| ) |
References dt_pdf_units, name, and SKIP_SPACES.
Referenced by _paper_size().
| int dt_pdf_parse_paper_size | ( | const char * | str, |
| float * | width, | ||
| float * | height | ||
| ) |
References dt_pdf_paper_sizes, dt_pdf_units, FALSE, height, name, SKIP_SPACES, TRUE, and width.
Referenced by _paper_size(), and _set_paper_size().
| dt_pdf_t * dt_pdf_start | ( | const char * | filename, |
| float | width, | ||
| float | height, | ||
| float | dpi, | ||
| dt_pdf_stream_encoder_t | default_encoder | ||
| ) |
References _pdf_set_offset(), dt_pdf_t::bytes_written, dt_pdf_t::default_encoder, dt_pdf_t::dpi, dt_pdf_t::fd, height, dt_pdf_t::n_offsets, dt_pdf_t::next_id, dt_pdf_t::next_image, dt_pdf_t::offsets, dt_pdf_t::page_height, dt_pdf_t::page_width, and width.
Referenced by _create_pdf(), and write_image().
|
static |
Referenced by dt_pdf_add_image().