JEditorPane, выравнивание изображений в тексте - PullRequest
2 голосов
/ 20 февраля 2012

_ http://i.stack.imgur.com/W2We5.gif

<img src=\"file:b:/smile.gif\" align=\"middle\">"

_ http://i.stack.imgur.com/VPHzw.gif

<img src=\"file:b:/smile.gif\">

Обязательно:
_ http://i.stack.imgur.com/WlMhG.gif

Мне нужно выровнять изображение в JEditorPane, и изображение не должно влиятьвысота рядов.Если я использую align = middle - картинка не выравнивается и сохраняет влияние на высоту строк.

Для решения аналогичных проблем в html я использую:

<span style=\"background-image: url('file:b:/smile.gif') 50% 50% no-repeat\"> &nbsp;&nbsp;&nbsp;&nbsp;</span>

Но этот методне работает в JEditorPane.Как я могу решить эту проблему?

1 Ответ

3 голосов
/ 20 февраля 2012

Чтобы выровнять свои изображения к середине панели JEditorPane, вы можете использовать что-то вроде этого:

editPane.setText("<html><p style = \"text-align:center;\"><img src = " + 
        "\"http://gagandeepbali.uk.to/gaganisonline/images/" + 
        "editsystemvariable2.png\" alt = \"pic\" /></p></html>\n");

Здесь свойство text-align может помочь вам.И что касается того, что изображение не должно влиять на размер строки, я не уверен в ваших намерениях по этому поводу, но если я вас правильно понял, вы можете указать фиксированную ширину и высоту для ваших изображений в теге <img>.

Здесь я использовал этот код и скажите мне, если вы хотите что-то еще, кроме того, что вы найдете в этом коде.Хотел бы я помочь,

import java.awt.*;
import javax.swing.*;

public class EditorPaneTest extends JFrame
{
    public EditorPaneTest()
    {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationByPlatform(true);        

        JEditorPane editPane = new JEditorPane();
        JScrollPane scrollPane = new JScrollPane(editPane);     

        editPane.setContentType("text/html");

        editPane.setText("<html><p style = \"text-align:center;\">Hello there, How you doing ?<img src = " + 
                                            "\"http://s018.radikal.ru/i504/1202/03/c01a2e35713f.gif" + 
                                                "\" alt = \"pic\" width = \"15\" height = \"15\" />I guess all is good!!" +
                                                        "<br />I hope this is what you wanted!! " + 
                                                                    "<img src =  \"http://s018.radikal.ru/i504/1202/03/c01a2e35713f.gif" + 
                                                "\" alt = \"pic\" width = \"15\" height = \"15\" /> Hope this works for you :-)</p></html>\n");

        add(scrollPane, BorderLayout.CENTER);
        setSize(400, 300);
        setVisible(true);
    }

    public static void main(String... args)
    {
        SwingUtilities.invokeLater(new Runnable()
        {
            public void run()
            {
                new EditorPaneTest();
            }
        });
    }
}

А вот и выходное изображение:

EditorPane's View

Подробнее Используйте это Smiley Image.Я удалил дополнительное нижнее пространство из изображения для вас.

...