mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
Fix #6067: LaTeX: images having a target are not aligned even if specified
This commit is contained in:
1
CHANGES
1
CHANGES
@@ -20,6 +20,7 @@ Bugs fixed
|
||||
* #6026: LaTeX: A cross reference to definition list does not work
|
||||
* #6046: LaTeX: ``TypeError`` is raised when invalid latex_elements given
|
||||
* #6067: LaTeX: images having a target are concatenated to next line
|
||||
* #6067: LaTeX: images having a target are not aligned even if specified
|
||||
* #6019: imgconverter: Including multipage PDF fails
|
||||
* #6047: autodoc: ``autofunction`` emits a warning for method objects
|
||||
|
||||
|
||||
@@ -1655,7 +1655,11 @@ class LaTeXTranslator(nodes.NodeVisitor):
|
||||
# in reverse order
|
||||
post = [] # type: List[unicode]
|
||||
include_graphics_options = []
|
||||
is_inline = self.is_inline(node)
|
||||
has_hyperlink = isinstance(node.parent, nodes.reference)
|
||||
if has_hyperlink:
|
||||
is_inline = self.is_inline(node.parent)
|
||||
else:
|
||||
is_inline = self.is_inline(node)
|
||||
if 'width' in attrs:
|
||||
if 'scale' in attrs:
|
||||
w = self.latex_image_length(attrs['width'], attrs['scale'])
|
||||
@@ -1697,7 +1701,7 @@ class LaTeXTranslator(nodes.NodeVisitor):
|
||||
if self.in_parsed_literal:
|
||||
pre.append('{\\sphinxunactivateextrasandspace ')
|
||||
post.append('}')
|
||||
if not is_inline:
|
||||
if not is_inline and not has_hyperlink:
|
||||
pre.append('\n\\noindent')
|
||||
post.append('\n')
|
||||
pre.reverse()
|
||||
|
||||
@@ -18,6 +18,10 @@ test-image
|
||||
.. image:: rimg.png
|
||||
:target: https://www.sphinx-doc.org/
|
||||
|
||||
.. image:: rimg.png
|
||||
:align: center
|
||||
:target: https://www.python.org/
|
||||
|
||||
.. a remote image
|
||||
.. image:: https://www.python.org/static/img/python-logo.png
|
||||
|
||||
|
||||
@@ -1202,6 +1202,10 @@ def test_latex_images(app, status, warning):
|
||||
assert ('\\sphinxhref{https://www.sphinx-doc.org/}'
|
||||
'{\\sphinxincludegraphics{{rimg}.png}}\n\n' in result)
|
||||
|
||||
# a centerized image having target
|
||||
assert ('\\sphinxhref{https://www.python.org/}{{\\hspace*{\\fill}'
|
||||
'\\sphinxincludegraphics{{rimg}.png}\\hspace*{\\fill}}}\n\n' in result)
|
||||
|
||||
|
||||
@pytest.mark.sphinx('latex', testroot='latex-index')
|
||||
def test_latex_index(app, status, warning):
|
||||
|
||||
Reference in New Issue
Block a user