如何在具有透明背景的 PNG/GIF/JPG 图形中获取此图形?
\documentclass[12pt,a4paper,x11names]{report}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{latexsym}
%\usepackage[x11names,table]{xcolor} % colores por nombres y tablas. dddd%
\usepackage{datetime}
\settimeformat{ampmtime}
\usepackage{hyperref} %Dudo si este paquete puede dar error al compilar con LATEX (no PDFLATEX)
\hypersetup{colorlinks=true, urlcolor=blue}
\headheight=15pt %/ MARGENES y otros
\usepackage[spanish]{babel}
\usepackage[T1]{fontenc}
%-------- Paquetes para uso con PSTricks -----------------------------------------------%
\usepackage{pstricks}
% -------- Paquetes de pst-all \usepackage{pst-all} paquete pstricks para las figuras en postcript
\usepackage{pst-plot}
\usepackage{pst-node}
\usepackage{pst-tree}
\usepackage{pst-grad}
\usepackage{pst-coil}
\usepackage{pst-text}
\usepackage{pst-3d}
\usepackage{pst-eps}
\usepackage[tiling]{pst-fill}
\usepackage{pstricks-add}
\usepackage{multido}
% ---- Fin Paquetes de pst-all
\usepackage{pst-fr3d} % paquete pstricks para las figuras en postcript
\usepackage{pst-infixplot,pst-math} % paquete pstricks para las figuras en postcript
%%%%% Paquetes para definir los "ladillos" de la parte superior de las páginas, los capítulos, las secciones y más cosas.
%%%%% La explicación de cómo se hace todo esto viene en las instrucciones que están incluidas en la instalacion.
\usepackage[clearempty,explicit,pagestyles]{titlesec}
\usepackage{titletoc}
%%%% Paquete para hacer los gráficos. % OJO.- En alguna compilación me daba incompatibilidad de esta opción dvips con la clase article %
\usepackage[dvips]{graphicx} % OJO.- HE QUITADO [dvips] antes de {graphicx} porque me daba error , y me pedía poner [dvips] en la clase principal, pero aparecía atenuado en article, como si no aceptase esta opción. Cargar despues de paquetes PSTricks
%-------- Fin Paquetes para uso con PSTricks -------------------------------------------%
\usepackage{graphicx} % paquete para insertar gráficos
\usepackage{epstopdf} % para que funcioneen los eps con pdflatex
\usepackage{multicol} % para incluir columnas multiples
\usepackage{marginnote} % para crear notas al margen
\usepackage{mathpazo} % para usar la fuente MathPAzo que me gusta más, yse lee bien.
\usepackage{fix-cm}
\usepackage{anyfontsize} %
\usepackage{fancyhdr} % Paquete para cabeceras y pies en cada página.
\pagestyle{fancy} % seleccionamos un estilo
\renewcommand{\labelenumi}{\arabic{enumi}.- } % personalizado a mi gusto los itemize.
\graphicspath{{G:/}{G:/Rafa/TEX Arquivos/}}
\settimeformat{ampmtime} % para incrustar fecha y hora en los documentos.
\spanishdecimal{.} % Para usar el punto decimal, y no confundirlo con las comas.
% ///////////////////////////////////////////////////////////////////////////// %
%\cfoot{\includegraphics[width=11cm]{heado2}} % imagen centro del pie
\lhead{M.I.} % texto izquierda de la cabecera
%\chead{\today \;-\; \currenttime } % texto centro de la cabecera
\rhead{Right Header} % número de página a la derecha
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %
\lfoot{{\gray{\footnotesize Compilado: \today \;-\; \currenttime}}} % texto izquierda del pie
\rfoot{Página \thepage}
% texto derecha del pie
\cfoot{} % texto central del pie
\renewcommand{\headrulewidth}{0.4pt} % grosor de la línea de la cabecera
%\renewcommand{\footrulewidth}{0.1pt} % grosor de la línea del pie
% ///////////////////////////////////////////////////////////////////////////// %
%\title{Foro }
%\author{Rafa S.F.}
%\date{\today}
% //////////////////////////////////////////////// %
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Figura 2.1
\begin{figure}[h]
\begin{center}
\psset{unit=.6cm,linewidth=1pt,linecolor=black,nodesep=3pt,arrowscale=1.3,arrows=->,arrowsize=4pt}\small
\begin{pspicture}*(-.5,0)(9.5,9.5)
\psframe[fillcolor=white,fillstyle=solid,linestyle=none](-.5,0)(9.5,9.5)
\rput(1,3){$\circlenode{A}{\textcolor{blue}{a}}$}
\rput(3,6){$\circlenode{B}{\textcolor{blue}{b}}$}
\rput(5,1){$\circlenode{C}{\textcolor{blue}{c}}$}
%
\ncline{->}{A}{B}\naput{\small $43$}
\ncarc[arcangleB=300]{->}{C}{B}\naput{\small $12$}
%
\ncarc{->}{C}{A}\naput{\small $23$}
%
\end{pspicture}
\end{center}
\caption{prueba}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}
答案1
使用 ImageMagick:
convert -density 300x300 simplenetwork02_stack.pdf -transparent white simplenetwork02_stack.png
要仅将 PSTricks 图形作为输出,请添加
\usepackage[tightpage,active]{preview}
\PreviewEnvironment{pspicture}
到序言部分。您可能需要调整pspicture
大小以获得紧密的图形:
\begin{pspicture}*(0,0)(6,7)
%\psframe[fillcolor=white,fillstyle=solid,linestyle=none](-.5,0)(7.5,7.5)
答案2
默认情况下,提供的画布pspicture
是透明的。如果您用其他颜色填充它,则psframe[fillstyle=solid,fillcolor=white]...
画布不再透明。
\documentclass[pstricks,border=12pt]{standalone}% set border=0pt if you don't want to have borders.
\begin{document}
\begin{pspicture}[showgrid=true](3,3)
\pscircle(1.5,1.5){1}
\end{pspicture}
\end{document}
编译上述代码以获得 PDF 输出。然后使用 ImageMagick 将其转换为具有透明度的 PNG,如下所示。
convert -density 100 -alpha on filename.pdf filename.png
输出为
这里用了引号 markdown,透明效果看得更清楚,背景看起来有点黄,证明真的是透明的!
评论:
-alpha
有 3 个互斥的选项:(on
启用透明度)、off
(禁用透明度但输出效果不佳)和remove
(删除透明度但输出效果良好)。
警告:
AlexG 解释和建议的选项-transparent
不会产生如下的良好输出。
以下是输入。红色区域将被转换为透明。
用 转换后convert -density 300 -transparent red in.pdf out.png
,输出如下。
红色区域的边界上仍有红色像素。你满意吗?我不满意。