Сервер Сгенерированные веб-снимки экрана?

Задано

var animals = ["cats", "dogs", "chimps", "moose"]

Удалить первый элемент

animals.removeFirst() // "cats"
print(animals)        // ["dogs", "chimps", "moose"]

Удалить последний элемент

animals.removeLast() // "moose"
print(animals)       // ["cats", "dogs", "chimps"]

Удалить элемент по индексу

animals.remove(at: 2) // "chimps"
print(animals)           // ["cats", "dogs", "moose"]

Удалить элемент неизвестного индекса

Только для одного элемента

if let index = animals.index(of: "chimps") {
    animals.remove(at: index)
}
print(animals) // ["cats", "dogs", "moose"]

Для нескольких элементов

var animals = ["cats", "dogs", "chimps", "moose", "chimps"]

animals = animals.filter(){$0 != "chimps"}
print(animals) // ["cats", "dogs", "moose"]

Или, альтернативно

animals.index(of: "chimps").map { animals.remove(at: $0) }

Примечания

  • Вышеуказанные методы изменяют массив на месте (кроме filter) и возвращают удаленный элемент.
  • Swift Руководство по фильтру карты Уменьшить
  • Если вы не хотите изменять исходный массив, вы можете использовать dropFirst или dropLast для создания нового массива.

Обновлено до Swift 3

7
задан Jurassic_C 23 September 2008 в 04:22
поделиться

7 ответов

У Вас на самом деле должен быть сервер, запускают рассматриваемый веб-браузер и делают снимок экрана приложения с соответствующими библиотеками. Apache не представит страницу для Вас так, у Вас должно быть программное обеспечение, которое будет.

2
ответ дан 6 December 2019 в 08:46
поделиться

Да, именно это необходим. Я делаю это в asp.net, и я на самом деле создаю объект WebBrowser, который avaialable в библиотеках классов платформы .NET для генерации снимка экрана.

2
ответ дан 6 December 2019 в 08:46
поделиться

ЕСЛИ Вашим сервером является Mac, то я рекомендую webkit2png, который является короткой программой Python, которая усиливает Objective C WebKit API для рендеринга URL. Лично, я использую его в сочетании с WWW:: Механизируйте, чтобы обойти мой участок разработки и сделать снимки экрана каждой страницы - полезными для тестирования функциональности, показа клиентов и совершенствования снимков экрана. Получающийся снимок экрана прекрасен, но долгое время иногда очень высок, прокручивая страницы.

ЕСЛИ Ваш сервер имеет небазовый дистрибутив Linux с установленным KDE, то Вы могли бы попробовать khtml2png. Я не попробовал это сам, но видел, что это упомянуло на webkit2png странице.

6
ответ дан 6 December 2019 в 08:46
поделиться

Вы могли бы также хотеть смотреть на WebKit, он известен тем, что он был легче встроить (используемый Adobe для AIR, Google для Chrome, Apple для iPhone...) затем другие механизмы визуализации. Это могло бы взять немного больше работы для установки, но это будет намного более стабильно, чем некоторый взлом, который запустил webbrowser и сделал снимок экрана.

6
ответ дан 6 December 2019 в 08:46
поделиться

Я использую сервис http://webthumb.bluga.net для поколения миниатюры. Устойчивые, мощные, простые в использовании, и очень разумные уровни. У меня есть производственный веб-сайт интенсивного трафика с помощью этого сервиса, и он работает очень хорошо. Учитывая трудность создания устойчивого веб-сервиса снимка экрана, хорошо сделать, чтобы кто-то еще сделал тяжелую работу.

2
ответ дан 6 December 2019 в 08:46
поделиться

Небесплатным решением для Java является WebRenderer. Интересная функция: это может эмулировать Safari, IE или браузеры Firefox при рендеринге. У них есть настольная версия и бездисплейная серверная версия. Также у них есть пример кода, показывающий, как представить изображение снимка экрана веб-страницы.

0
ответ дан 6 December 2019 в 08:46
поделиться

виртуальный X-сервер кадрового буфера

Я рекомендовал бы, чтобы XVFB (виртуальный X-сервер кадрового буфера) был лучшим решением для того, чтобы сделать снимки экрана бездисплейного сервера. Виртуальный X-сервер кадрового буфера xvfb обеспечивает X-сервер, который может работать на машинах без аппаратных средств дисплея и никаких физических устройств ввода данных. Я использую это на своем сервере для тестирования URL и делания его снимка экрана. Мы используем Ubuntu & XVFB + Firefox. Это хорошо работает. Измените согласно своим потребностям. Смотрите на этих статьях. Это могло бы быть использование, полное для Вас.

http://www.semicomplete.com/blog/geekery/xvfb-firefox.html

http://linux.about.com/cs/linux101/g/xvfb.htm

http://www.xfree86.org/4.0.1/Xvfb.1.html

0
ответ дан 6 December 2019 в 08:46
поделиться
Другие вопросы по тегам:

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