19.3. Crear salida

Figura 19.61 muestra un ejemplo de diseño de impresión que incluye todos los tipos de elementos de diseño descritos en la sección anterior.

../../../_images/print_composer_complete.png

Figura 19.61 Diseño de impresión con vista de mapa, leyenda, imagen, barra de escala, coordenadas, texto y marco HTML agregado

Desde el menú Diseño o barra de herramientas, puede generar el diseño de impresión en diferentes formatos de archivo, y es posible modificar la resolución (calidad de impresión) y el tamaño del papel:

  • El icono filePrint Imprimir le permite imprimir el diseño en una impresora conectada o en un archivo PostScript, según los controladores de impresora instalados.

  • El icono saveMapAsImage Exportar como imagen exporta los formatos de imagen de diseño de impresión como :file:` PNG`, BMP, :file:` TIF`, JPG, y muchos otros. .

  • El icono saveAsSVG Exportar como SVG guarda el diseño de impresión como un SVG (Gráfico vectorial escalable).

  • El icono saveAsPDF Exportar como PDF guarda el diseño de impresión definido directamente como un archivo PDF (Formato de documento portátil).

19.3.1. Configuración de exportación

Siempre que exporta un diseño de impresión, hay una selección de configuraciones de exportación que QGIS debe verificar para producir la salida más adecuada. Estas configuraciones son:

19.3.2. Exportar como imagen

Para exportar una composición como imagen:

  1. Click en el icono saveMapAsImage Exportar como imagen

  2. Seleccione el formato de la imagen, la carpeta y el nombre del archivo (por ejemplo myill.png) para usar. Si el diseño contiene más de una página, cada página se exportará a un archivo con el nombre de archivo dado con el número de página adjunto (por ejemplo myill_2.png).

  3. En el siguiente diálogo (Opciones de exportación de imágenes) :

    • Puede suplantar la Resolución de exportación del diseño de impresión y las dimensiones de la página exportada (como se establece en el panel Diseño).

    • La representación de imágenes también se puede mejorar con la opción Activar antialiasing.

    • Si desea exportar su diseño como una imagen georreferenciada (por ejemplo, para compartir con otros proyectos), marque la opción unchecked Generar archivo de georreferenciación y un *Archivo georreferenciado ESRI * con el mismo nombre que la imagen exportada, pero con una extensión diferente (.tfw para TIFF,:file:.pnw para PNG ,:file:jgw para JPEG, …) se creará al exportar. Esta opción también se puede marcar por defecto en el panel de diseño.

      Nota

      Para la salida de varias páginas, solo la página que contiene el mapa de referencia obtendrá un archivo mundial (asumiendo que la opción Generar archivo de georreferenciación está marcada).

    • Marcando la opción checkbox Recortar al contenido, la imagen generada por el diseño incluirá el área mínima que encierra todos los elementos (mapa, leyenda, barra de escala, formas, etiqueta, imagen …) de cada página de la composición:

      • Si la composición incluye una sola página, se cambia el tamaño de la salida para incluir TODO en la composición. Luego, la página se puede reducir o extender a todos los elementos según su posición (en, arriba, abajo, izquierda o derecha de la página).

      • En el caso de un diseño de varias páginas, se cambiará el tamaño de cada página para incluir elementos en su área (lados izquierdo y derecho para todas las páginas, más arriba para la primera página e inferior para la última página). Cada página redimensionada se exporta a un archivo separado.

      El cuadro de diálogo Recortar al contenido también le permite agregar márgenes alrededor de los límites recortados.

../../../_images/image_export_options.png

Figura 19.62 Opciones de exportación de imágenes, la salida se redimensiona a la extensión de los elementos

Truco

Utilice formatos de imagen que admitan transparencia cuando los elementos se extienden más allá de la extensión del papel

Los elementos de diseño pueden colocarse fuera de la extensión del papel. Al exportar con la opción Recortar al contenido, la imagen resultante puede extenderse más allá de la extensión del papel. Dado que el fondo fuera de la extensión del papel será transparente, para los formatos de imagen que no admiten la transparencia (por ejemplo, BMP y JPG), el fondo transparente se representará en negro completo, «corrompiendo» la imagen. Utilice formatos compatibles con transparencias (por ejemplo, TIFF y PNG) en tales casos.

Nota

Cuando sea compatible con el formato (por ejemplo PNG) y la biblioteca Qt subyacente, la imagen exportada puede incluir :ref:` metadatos del proyecto <project_metadata>`(autor, título, fecha, descripción …)

19.3.3. Exportar como SVG

Para exportar un diseño como SVG:

  1. Haga clic en el botón del icono saveAsSVG Exportar como SVG

  2. Complete la ruta y el nombre del archivo (se usa como nombre base para todos los archivos en el caso de una composición de varias páginas, como para la exportación de imágenes)

  3. En las siguientes Opciones de exportación de SVG, puede anular el diseño predeterminado ajustes de exportación o configurar unos nuevos:

    • unchecked Exportar capas de mapas como grupos SVG: los elementos exportados se agrupan dentro de capas cuyo nombre coincide con los nombres de capa de QGIS, lo que facilita la comprensión del contenido del documento.

    • unchecked Exportar siempre como vectores: algunas opciones de representación requieren que los elementos se rastericen para una mejor representación. Marque esta opción para mantener los objetos como vectores con el riesgo de que la apariencia del archivo de salida no coincida con la vista previa del diseño de impresión (para más detalles, consulte Configuración de exportación).

    • checkbox Exportar metadatos RDF del documento, como el título, autor, fecha, descripción…

    • checkbox Simplifique las geometrías para reducir el tamaño del archivo de salida: esto evita exportar TODOS los vértices de la geometría, lo que puede resultar en un tamaño de archivo de exportación ridículamente complejo y grande que podría fallar al cargar en otras aplicaciones. Las geometrías se simplificarán al exportar el diseño para eliminar cualquier vértice redundante que no sea discerniblemente diferente en la resolución de exportación (por ejemplo, si la resolución de exportación es 300 ppp, vértices a distancias inferiores a 1/600 pulgadas serán eliminados).

    • Establezca Exportación de texto: controla si las etiquetas de texto se exportan como objetos de texto adecuados (:guilabel:` Exportar siempre textos como objetos de texto`) o solo como trazados (Exportar siempre textos como trazados). Si se exportan como objetos de texto, se pueden editar en aplicaciones externas (por ejemplo, Inkscape) como texto normal. PERO el efecto secundario es que la calidad de la representación se reduce Y hay problemas con la representación cuando se implementan ciertas configuraciones de texto, como los búferes. Es por eso que se recomienda exportar como trazados.

    • Aplicar checkbox Recortar al contenido opción

    • unchecked Desactivar las exportaciones de capas ráster teseladas: Al exportar archivos, QGIS utiliza una representación en mosaico de capa ráster incorporada que ahorra memoria. A veces, esto puede causar «vetas» visibles en los rásteres de los archivos generados. Marcar esta opción solucionaría eso, a costa de un mayor uso de memoria durante las exportaciones.

../../../_images/svg_export_options.png

Figura 19.63 Opciones de Exportación de SVG

Nota

Actualmente, la salida SVG es muy básica. Este no es un problema en QGIS, pero un problema con la biblioteca Qt subyacente. Esperamos que esto se solucione en futuras versiones.

19.3.4. Exportar como PDF

Para exportar un diseño como PDF:

  1. Click en el icono saveAsPDF Exportar como PDF

  2. Complete la ruta y el nombre del archivo: a diferencia de la exportación de imágenes y SVG, todas las páginas del diseño se exportan a un solo archivo PDF.

  3. En el siguiente cuadro de diálogo Opciones de exportación de PDF, puede anular el diseño predeterminado :ref:`configuración de exportación <layout_export_settings>`o configurar unos nuevos:

    • unchecked Exportar siempre como vectores: algunas opciones de representación requieren que los elementos se rastericen para una mejor representación. Marque esta opción para mantener los objetos como vectores con el riesgo de que la apariencia del archivo de salida no coincida con la vista previa del diseño de impresión (para más detalles, consulte Configuración de exportación).

    • checkbox Anexar información de georeferencia: disponible sólo si el reference map, del que se toma la información, está en la primera página.

    • checkbox Exportar metadatos RDF del documento, como el título, autor, fecha, descripción…

    • Establezca los controles Exportación de texto: si las etiquetas de texto se exportan como objetos de texto adecuados (Siempre exportar texto como objetos de texto) o solo como trayectorias (Siempre exportar texto como trazados). Si se exportan como objetos de texto, se pueden editar en aplicaciones externas (por ejemplo, Inkscape) como texto normal. PERO el efecto secundario es que la calidad de representación disminuye, Y hay problemas con la representación cuando ciertas configuraciones de texto, como los búferes, están en su lugar. Por eso se recomienda exportar como rutas.

    • Controle la compresión de imagen PDF usando:

      • Pérdida (JPEG), el cuál es el modo de compresión predeterminado

      • o Sin pérdida, que crea archivos más grandes en la mayoría de los casos, pero es mucho más adecuado para impresiones o para postproducción en aplicaciones externas (requiere Qt 5.13 o posterior).

    • unchecked Crear PDF Geoespacial (GeoPDF): Genere un archivo PDF georreferenciado (requiere GDAL versión 3 o posterior).

    • unchecked Desactivar las exportaciones de capas ráster teseladas: Al exportar archivos, QGIS utiliza una representación basada en mosaicos que ahorra memoria. A veces, esto puede causar «vetas» visibles en los rásteres de los archivos generados. Marcar esta opción solucionaría eso, a costa de un mayor uso de memoria durante las exportaciones.

    • checkbox Simplificar geometrías para reducir el tamaño del archivo de salida: Las geometrías se simplificarán al exportar el diseño al eliminar los vértices que no sean perceptiblemente diferentes en la resolución de exportación (por ejemplo, si la resolución de exportación es 300 ppp, vértices que están a distancia menor de 1/600 de pulgadas se eliminarán). Esto puede reducir el tamaño y la complejidad del archivo de exportación (los archivos muy grandes pueden fallar al cargarse en otras aplicaciones).

../../../_images/pdf_export_options.png

Figura 19.64 Opciones de exportación a PDF

Nota

Desde QGIS 3.10, con GDAL 3, se admite la exportación de GeoPDF y hay disponibles varias opciones específicas de GeoPDF:

  • Formato (formato GeoPDF - hay algunas variaciones GeoPDF),

  • Incluir múltiples temas de mapa (especificar los temas de mapa a incluir),

  • :guilabel:ʻIncluir información del objeto vectorial` (elija las capas y agrúpelas en grupos de PDF lógicos).

Nota

La exportación de un diseño de impresión a formatos que admiten georreferenciación (por ejemplo, PDF y TIFF) crea una salida georreferenciada de forma predeterminada.

19.3.5. Generar un Atlas

Las funciones de Atlas le permiten crear libros de mapas de forma automatizada. Atlas usa los objetos de una tabla o capa vectorial (capa de cobertura) para crear una salida para cada objeto (objeto atlas) en la tabla/capa. El uso más común es acercar un elemento del mapa a la función del atlas actual. Otros casos de uso incluyen:

  • un elemento de mapa que muestra, para otra capa, solo entidades que comparten el mismo atributo que la entidad atlas o que están dentro de su geometría.

  • una etiqueta o elemento HTML cuyo texto se reemplaza a medida que los objetos se repiten

  • un elemento de la tabla que muestra los atributos de los objetos asociados :ref:”padre o hijo<vector_relations>” del objeto actual del atlas …

Para cada objeto, la salida se procesa para todas las páginas y elementos de acuerdo con su configuración de exportación.

Truco

Utilizar variables para mayor flexibilidad

QGIS proporciona un gran panel de funciones y variables, incluidas las relacionadas con el atlas, que puede utilizar para manipular los elementos de diseño, pero también la simbología de las capas, según el estado del atlas. La combinación de estas funciones le brinda mucha flexibilidad y le ayuda a producir fácilmente mapas avanzados.

Para habilitar la generación de un atlas y acceder a los parámetros del atlas, consulte el panel Atlas. Este panel contiene lo siguiente (ver Figura 19.65):

../../../_images/atlas_properties.png

Figura 19.65 Panel Atlas

  • checkbox Generar atlas habilita o deshabilita la generación de atlas.

  • Configuración

    • Una capa de cobertura selectString cuadro combinado que le permite elegir la tabla o capa vectorial que contiene los objetos sobre los que iterar.

    • Un checkbox opcional Ocultar capa de cobertura que, si está marcada, ocultará la capa de cobertura (pero no las otras capas) durante la generación.

    • Un cuadro combinado opcional Nombre de la página para especificar el nombre de la página(s) de objetos. Puede seleccionar un campo de la capa de cobertura o establecer una expresión. Si esta opción está vacía, QGIS utilizará una ID interna, de acuerdo con el filtro y / o el orden de clasificación aplicado a la capa.

    • Un checkbox Área de texto opcional Filtrar con que le permite especificar una expresión para filtrar entidades de la capa de cobertura. Si la expresión no está vacía, solo se procesarán los objetos que se evalúen como Verdadero.

    • Una checkbox opcional Ordenar por que le permite ordenar las entidades de la capa de cobertura (y la salida), usando un campo de la capa de cobertura o una expresión. El orden de clasificación (ascendente o descendente) se establece mediante el botón de dos estados Dirección de clasificación que muestra una flecha hacia arriba o hacia abajo.

  • Salida - aquí es donde se puede configurar la salida del atlas:

    • Un cuadro de texto :guilabel:ʻfichero expresión de salida` que se usa para generar un nombre de archivo para cada objeto del atlas. Se basa en expresiones. es significativo solo para renderizar en varios archivos.

    • A checkbox Exportar fichero simple cuando sea posible que le permite forzar la generación de un solo archivo si esto es posible con el formato de salida elegido (PDF, por ejemplo). Si este campo está marcado, el valor del campo fichero de expresión de salida no tiene sentido.

    • Una lista desplegable Formato de exportación de imagen para seleccionar el formato de salida cuando se utiliza el botón saveMapAsImage Exportar atlas como imágenes….

19.3.5.1. Controlar mapa por Atlas

El uso más común de atlas es con el elemento del mapa, acercándose a la función del atlas actual, a medida que la iteración pasa por la capa de cobertura. Este comportamiento se establece en las propiedades del grupo Controlado por atlas del elemento del mapa. Consulte control_atlas para conocer las diferentes configuraciones que puede aplicar en el elemento del mapa.

19.3.5.2. Personalizar etiquetas por expresión

Para adaptar las etiquetas al objeto sobre el que itera el atlas, puede incluir expresiones. Asegúrese de colocar la parte de la expresión (incluidas las funciones, campos o variables) entre [% y %] (consulte El elemento etiqueta para más detalles).

Por ejemplo, para una capa de ciudad con campos CITY_NAME y ZIPCODE, podrías insertar esto:

The area of [% concat( upper(CITY_NAME), ',', ZIPCODE, ' is ',
format_number($area/1000000, 2) ) %] km2

o, otra combinación:

The area of [% upper(CITY_NAME)%],[%ZIPCODE%] is
[%format_number($area/1000000,2) %] km2

La información [% concat( upper(CITY_NAME), ',', ZIPCODE, ' is ',  format_number($area/1000000, 2) ) %] es una expresión que se usa dentro de la etiqueta. Ambas expresiones darían como resultado el siguiente tipo de etiqueta en el atlas generado:

The area of PARIS,75001 is 1.94 km2

19.3.5.3. Explorar los botones de suplantación definida por datos con atlas

Hay varios lugares donde puede utilizar el botón dataDefine Suplantación definida por datos para suplantar la configuración seleccionada. Esto es particularmente útil con la generación de atlas. Consulte Configuración de anulación definida por datos para obtener más detalles sobre este widget.

Para los siguientes ejemplos, la capa Regions del conjunto de datos de muestra de QGIS se usa y se selecciona como capa de cobertura para la generación del atlas. Suponemos que es un diseño de página única que contiene un elemento de mapa y un elemento de etiqueta.

Cuando la altura (norte-sur) de la extensión de una región es mayor que su ancho (este-oeste), debe utilizar la orientación Vertical en lugar de Horizontal para optimizar el uso del papel. Con un botón dataDefine Suplantación definida por datos puede establecer dinámicamente la orientación del papel.

Haga clic derecho en la página y seleccione Propiedades de la página para abrir el panel. Queremos establecer la orientación dinámicamente, usando una expresión dependiendo de la geometría de la región, así que presione el botón de campo dataDefine Orientación, seleccione Editar … `para abrir el diálogo :guilabel: Generador de cadenas de expresión` e ingrese la siguiente expresión:

CASE WHEN bounds_width(@atlas_geometry) > bounds_height(@atlas_geometry)
THEN 'Landscape' ELSE 'Portrait' END

Ahora bien, si previsualiza el atlas, el documento se orienta automáticamente, pero la ubicación de los elementos puede no ser la ideal. Para cada región, también debe cambiar la ubicación de los elementos de diseño. Para el elemento del mapa, puede utilizar el botón dataDefine de la propiedad Anchura para establecerla dinámica usando la siguiente expresión:

@layout_pagewidth - 20

Del mismo modo, utilice el botón |dataDefine | de la propiedad Altura para proporcionar la siguiente expresión para restringir el tamaño del elemento del mapa:

@layout_pageheight - 20

Para asegurarse de que el elemento del mapa esté centrado en la página, establezca su Punto de referencia en el botón de opción superior izquierdo e ingrese 10 para sus posiciones X e Y.

Agreguemos un título sobre el mapa en el centro de la página. Seleccione el elemento de la etiqueta y establezca la alineación horizontal en radioButtonOn Centro. A continuación, mueva la etiqueta a la posición correcta, elija el botón central para Punto de referencia, y proporcione la siguiente expresión para el campo :guilabel:` X`:

@layout_pagewidth / 2

Para todos los demás elementos de diseño, puede establecer la posición de manera similar para que estén colocados correctamente tanto para retrato como para paisaje. También puede hacer más ajustes, como personalizar el título con atributos de objetos (ver ejemplo Personalizar etiquetas por expresión), cambiar imágenes, cambiar el tamaño del número de columnas de leyenda según la orientación de la página, …

La información proporcionada aquí es una actualización del excelente blog (en inglés y portugués) sobre las opciones de anulación definida por datos Multiple_format_map_series_using_QGIS_2.6.

Otro ejemplo de uso de botones de anulación definidos por datos es el uso de una imagen dinámica. Para los siguientes ejemplos usamos una capa de geopaquete que contiene un campo BLOB llamado logo con el tipo de campo binario (ver Creando una nueva capa de GeoPackage). Para cada objeto se define una imagen diferente para que el atlas pueda iterar como se describe en Obtenga una vista previa y genere un atlas. Todo lo que necesita hacer es agregar una imagen en el diseño de impresión e ir a sus Propiedades del elemento en el contexto del atlas. Allí puede encontrar un botón de suplantación definida por datos en la sección Fuente de la imagen de Propiedades principales.

../../../_images/picture_image_source.png

En la siguiente ventana, elija Editar para que se abra el Generador de cadenas de expresión. Desde la sección Campos y valores puede encontrar el campo BLOB que se definió en la capa de geopaquete. Haga doble click en el nombre del campo logo y haga click en Aceptar.

../../../_images/expression_blob_picture_atlas.png

El atlas itera sobre las entradas en el campo BLOB siempre que elija la capa de geopaquete como Capa de cobertura (puede encontrar más instrucciones en Obtenga una vista previa y genere un atlas).

Estos son solo dos ejemplos de cómo puede usar algunas configuraciones avanzadas con atlas.

19.3.5.4. Obtenga una vista previa y genere un atlas

../../../_images/atlas_preview.png

Figura 19.66 Barra de herramienta Vista Previa del Atlas

Una vez que se han configurado los ajustes del atlas y los elementos de diseño (mapa, tabla, imagen …) vinculados a él, puede crear una vista previa de todas las páginas eligiendo Atlas -> Vista preliminar de Atlas o haciendo clic en el botón de icono atlas Vista previa de Atlas. Luego, puede usar las flechas para navegar por todos los objetos:

  • atlasFirst Primer Objeto Espacial

  • atlasPrev Objeto Espacial Anterior

  • atlasNext Objeto Espacial Siguiente

  • atlasLast Ultimo Objeto Espacial

También puede utilizar el cuadro combinado para seleccionar y obtener una vista previa de una función específica. El cuadro combinado muestra los nombres de los objetos del atlas de acuerdo con la expresión establecida en la opción de atlas Nombre de página.

En cuanto a las composiciones simples, un atlas se puede generar de diferentes maneras (consulte Crear salida para obtener más información; solo use las herramientas del menú o barra de herramientas Atlas en lugar del menú Diseño.

Esto significa que puede imprimir directamente sus composiciones con Atlas -> Imprimir Atlas. También puede crear un PDF usando Atlas -> Exportar Atlas como PDF…: Se le pedirá un directorio para guardar todos los archivos PDF generados, excepto si se ha seleccionado el checkbox Exportar fichero simple cuando sea posible. En ese caso, se le pedirá que proporcione un nombre de archivo.

Con Atlas -> Exportar Atlas como imágenes… o Atlas -> Exportar Atlas como SVG …, también se le pedirá que seleccione una carpeta. Cada página de cada composición de objetos de atlas se exporta al formato de archivo de imagen establecido en el panel Atlas o a SVG.

Nota

Con la salida de varias páginas, un atlas se comporta como un diseño en el que solo la página que contiene Configuración General obtendrá un archivo georreferenciado (para cada objeto saliente).

Truco

Imprimir un objeto de Atlas específico

Si desea imprimir o exportar la composición de un solo objeto del atlas, simplemente inicie la vista preliminar, seleccione el objeto deseado en la lista desplegable y haga clic en Diseño -> Imprimir (o :menuselection:ʻExportar… `a cualquier formato de archivo compatible).

19.3.5.5. Utilizar relaciones definidas por el proyecto para la creación de atlas

Para los usuarios con conocimientos de HTML y Javascript, es posible operar en objetos GeoJSON y usar relaciones definidas por el proyecto del proyecto QGIS. La diferencia entre este enfoque y el uso de expresiones insertadas directamente en el HTML es que le brinda una función GeoJSON completa y no estructurada con la que trabajar. Esto significa que puede usar bibliotecas y funciones de Javascript existentes que operan en representaciones de objetos de GeoJSON.

El siguiente código incluye todos los objetos hijo relacionados de la relación definida. Usar la función de JavaScript setFeature, le permite crear HTML flexible que representa relaciones en el formato que desee (listas, tablas, etc.). En el ejemplo de código, creamos una lista dinámica de viñetas de los objetos secundarios relacionados.

// Declare the two HTML div elements we will use for the parent feature id
// and information about the children
<div id="parent"></div>
<div id="my_children"></div>

<script type="text/javascript">
   function setFeature(feature)
   {
     // Show the parent feature's identifier (using its "ID" field)
     document.getElementById('parent').innerHTML = feature.properties.ID;
     //clear the existing relation contents
     document.getElementById('my_children').innerHTML = '';
     feature.properties.my_relation.forEach(function(child_feature) {
     // for each related child feature, create a list element
     // with the feature's name (using its "NAME" field)
       var node = document.createElement("li");
       node.appendChild(document.createTextNode(child_feature.NAME));
       document.getElementById('my_children').appendChild(node);
     });
   }
</script>

Durante la creación del atlas, habrá una iteración sobre la capa de cobertura que contiene las entidades principales. En cada página, verá una lista con viñetas de las entidades secundarias relacionadas siguiendo el identificador del padre.