Я впервые пишу что-то на Java, поэтому медленно склоняюсь к этому, но не могу решить, как решить эту проблему. У меня возникла проблема с отправкой изображений, которые пользователь вставляет в мою панель редактирования JEditorPane, в виде встроенного изображения, а не в виде вложения файла в электронное письмо.
private static void embedAndSendEmail(JEditorPane editorPane) throws IOException, BadLocationException, URISyntaxException {
HTMLDocument doc = (HTMLDocument) editorPane.getDocument();
ElementIterator iterator = new ElementIterator(doc);
Element element;
// Collect images to embed
List imageFiles = new ArrayList();
while ((element = iterator.next()) != null) {
AttributeSet attrs = element.getAttributes();
Object nameAttr = attrs.getAttribute(StyleConstants.NameAttribute);
if (nameAttr instanceof HTML.Tag) {
HTML.Tag tag = (HTML.Tag) nameAttr;
if (tag == HTML.Tag.IMG) {
String src = (String) attrs.getAttribute(HTML.Attribute.SRC);
if (src != null && src.startsWith("file:///")) {
// Read image data from editor pane
InputStream inputStream = new URL(src).openStream();
byte[] imageData = inputStream.readAllBytes();
String base64Image = Base64.getEncoder().encodeToString(imageData);
// Replace src attribute with base64 data
String newSrc = "data:image/png;base64," + base64Image;
doc.setInnerHTML(element, "
[img]\[/img]
");
// Add image file to the list (for sending email later)
String filePath = new URI(src).getPath(); // Convert URL to file path
imageFiles.add(new File(filePath));
}
}
}
}
}
Я пытался использовать маршрут Base64, хотя знаю, что он не так надежен, как использование Mimebodypart(), но я пытаюсь отправить вставленное пользователем изображение.Ниже я помещаю код, который взаимодействует друг с другом для отправки электронного письма, без панелей и кнопок. Код ниже пытается встроить эти изображения, но результат тот же: они отправляются в виде вложения.
Я впервые пишу что-то на Java, поэтому медленно склоняюсь к этому, но не могу решить, как решить эту проблему. У меня возникла проблема с отправкой изображений, которые пользователь вставляет в мою панель редактирования JEditorPane, в виде встроенного изображения, а не в виде вложения файла в электронное письмо. [code] private static void embedAndSendEmail(JEditorPane editorPane) throws IOException, BadLocationException, URISyntaxException { HTMLDocument doc = (HTMLDocument) editorPane.getDocument(); ElementIterator iterator = new ElementIterator(doc); Element element;
// Collect images to embed List imageFiles = new ArrayList(); while ((element = iterator.next()) != null) { AttributeSet attrs = element.getAttributes(); Object nameAttr = attrs.getAttribute(StyleConstants.NameAttribute);
if (nameAttr instanceof HTML.Tag) { HTML.Tag tag = (HTML.Tag) nameAttr;
if (tag == HTML.Tag.IMG) { String src = (String) attrs.getAttribute(HTML.Attribute.SRC); if (src != null && src.startsWith("file:///")) { // Read image data from editor pane InputStream inputStream = new URL(src).openStream(); byte[] imageData = inputStream.readAllBytes(); String base64Image = Base64.getEncoder().encodeToString(imageData);
// Replace src attribute with base64 data String newSrc = "data:image/png;base64," + base64Image; doc.setInnerHTML(element, " [img]\[/img] ");
// Add image file to the list (for sending email later) String filePath = new URI(src).getPath(); // Convert URL to file path imageFiles.add(new File(filePath)); } } } }
} [/code] Я пытался использовать маршрут Base64, хотя знаю, что он не так надежен, как использование Mimebodypart(), но я пытаюсь отправить вставленное пользователем изображение.Ниже я помещаю код, который взаимодействует друг с другом для отправки электронного письма, без панелей и кнопок. Код ниже пытается встроить эти изображения, но результат тот же: они отправляются в виде вложения. [code]public class testing { private static void createAndShowGUI() { JFrame frame = new JFrame("Mailgun"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(1280, 720);
//Listener to insert an image upon clicking imageInsert.addActionListener(e -> { JFileChooser fileChooser = new JFileChooser(); fileChooser.setFileFilter(new FileNameExtensionFilter("Images", "jpg", "jpeg", "png", "gif")); if (fileChooser.showOpenDialog(frame) == JFileChooser.APPROVE_OPTION) { File imageFile = fileChooser.getSelectedFile(); insertImage(editorPane, imageFile); } });
JButton sendButton = new JButton("Send Email"); sendButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { String to = emailField.getText(); String subject = subjectField.getText(); String content = "" + editorPane.getText() +""; //Made to not allow an email to be sent till fields are not empty if (to.isEmpty() || subject.isEmpty() || content.isEmpty()) { JOptionPane.showMessageDialog(frame, "Please fill in all fields."); return; }
Я использую Mail::queue() Laravel 4 для отправки электронных писем, используя встроенный драйвер Mailgun. Проблема в том, что существует несколько доменов Mailgun, с которых я хотел бы иметь возможность отправлять электронные письма, но домен должен...
Я новичок в этой области, поэтому, возможно, я чего-то не понимаю. Однако я подумал, что вы можете использовать встраивания BERT для определения семантического сходства. Я пытался с помощью этого сгруппировать некоторые слова по категориям, но...
Я подумал, что вы можете использовать встраивания BERT для определения семантического сходства. Я пытался с помощью этого сгруппировать некоторые слова по категориям, но результаты были очень плохими.
Например. вот небольшой пример с животными и...
Я пытаюсь создать экземпляр apache.mailet.Mail, загружаемый из файла. Предыдущие реализации этого метода использовали MimeMessage вместе с входным потоком, но, насколько я могу судить, это избавляет от информации SMTP, такой как MAIL FROM и RCPT TO,...