PHP/GD Гауссов Эффект размытия

Иначе должен использовать javax.swing.text.html. HTMLEditorKit для извлечения текста.

import java.io.*;
import javax.swing.text.html.*;
import javax.swing.text.html.parser.*;

public class Html2Text extends HTMLEditorKit.ParserCallback {
    StringBuffer s;

    public Html2Text() {
    }

    public void parse(Reader in) throws IOException {
        s = new StringBuffer();
        ParserDelegator delegator = new ParserDelegator();
        // the third parameter is TRUE to ignore charset directive
        delegator.parse(in, this, Boolean.TRUE);
    }

    public void handleText(char[] text, int pos) {
        s.append(text);
    }

    public String getText() {
        return s.toString();
    }

    public static void main(String[] args) {
        try {
            // the HTML to convert
            FileReader in = new FileReader("java-new.html");
            Html2Text parser = new Html2Text();
            parser.parse(in);
            in.close();
            System.out.println(parser.getText());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

касательно: Удаляют HTML-тэги из файла для извлечения только ТЕКСТА

10
задан Alix Axel 8 August 2009 в 13:23
поделиться

2 ответа

Вы можете скопировать определенную часть изображения в новое изображение, применить размытие к новому изображению и скопировать результат обратно.

Примерно так:

$image2 = imagecreate($width, $height);
imagecopy  ( $image2  , $image  , 0  , 0  , $x  , $y  , $width  , $height);
imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR);
imagecopy ($image, $image2, $x, $y, 0, 0, $width, $height);
12
ответ дан 3 December 2019 в 23:14
поделиться

Я не проверял документацию для imagefilter, и я не знаю, невозможно ли это, или есть ли эквивалент применения этого к (части) изображения. Но если предположить, что нет, почему бы и нет:

  1. Скопируйте часть, которую вы хотите размыть, в новый (временный) образ GD (не нужно записывать ее на диск, просто назначьте ее новой временной переменной).
  2. Примените фильтр размытия по Гауссу к этому временному изображению.
  3. Скопируйте результирующее (отфильтрованное) изображение туда, откуда оно было получено (функции для этого определенно есть в библиотеке GD)
2
ответ дан 3 December 2019 в 23:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: