getMobileOpinionList()
getDefaultOpinionList()
Image
к экземпляру Document
. В этом нет ничего плохого, но если вы хотите сделать изображение прозрачным, нужно создать мягкую маску. Это нетрудно, но есть и более простой способ сделать фон прозрачным: добавьте изображение прямо к содержимому, а затем определите прозрачность с помощью PdfExtGState
:PdfCanvas canvas = new PdfCanvas(pdfDoc.addNewPage());
ImageData image = ImageDataFactory.create(imgSrc);
canvas.saveState();
PdfExtGState state = new PdfExtGState();
state.setFillOpacity(0.6f);
canvas.setExtGState(state);
canvas.addImage(image, 0, 0, pageSize.getWidth(), false);
Image img = createBarcode(1, 1, pdfDoc);
doc.add(new Paragraph(String.format("This barcode measures %s by %s user units",
img.getImageScaledWidth(), img.getImageScaledHeight())));
doc.add(img);
img = createBarcode(3, 3, pdfDoc);
doc.add(new Paragraph(String.format("This barcode measures %s by %s user units",
img.getImageScaledWidth(), img.getImageScaledHeight())));
doc.add(img);
img = createBarcode(3, 1, pdfDoc);
doc.add(new Paragraph(String.format("This barcode measures %s by %s user units",
img.getImageScaledWidth(), img.getImageScaledHeight())));
doc.add(img);
Image
не должен вас запутать. Если вы посмотрите на метод createBarcode(),
то увидите, что Image
в действительности является векторным изображением:public Image createBarcode(float mw, float mh, PdfDocument pdfDoc) {
BarcodePDF417 barcode = new BarcodePDF417();
barcode.setCode("BarcodePDF417 barcode");
return new Image(barcode.createFormXObject(Color.BLACK, pdfDoc)).scale(mw, mh);
}
scale()
, определяют высоту и ширину маленьких прямоугольников. Во внутренней части штрихкода, можно увидеть следующее:0 21 3 1 re
Rectangle size = barcode.getBarcodeSize();
float width = mw * size.getWidth();
float height = mh * size.getHeight();
mw
и mh
равняются 1
.PdfFormXObject
и переношу его в Image
. Затем я могу добавить Image
к документу, как и любое другое изображение. Основное отличие этого изображения от обычных заключается в том, что оно векторное. $i = 0;
$newsList = array();
while($row = $result->fetch()) {
$newsList[$i]['id'] = $row['id'];
$newsList[$i]['title'] = $row['title'];
$newsList[$i]['date'] = $row['date'];
$newsList[$i]['author_name'] = $row['author_name'];
$newsList[$i]['short_content'] = $row['short_content'];
$i++;
}
return $newsList;
$newsList = array();
while($row = $result->fetch()) {
$newsList[] = $row;
}
return $newsList;
return $result->fetchAll();
abstract class Model {
protected $table;
protected $db;
public function __construct($db) {
$this->db = $db;
}
public function find($id) {
$sql = "SELECT * FROM `$this->table` WHERE id=?";
$stmt = $this->db->prepare($sql);
$stmt->execute([$id]);
return $stmt->fetch();
}
}
class News extends Model {
protected $table = 'news';
}
$news = new News($db);
$article = $news->find($id);
public function isAnswerExists($answers){}
$question = 1;
foreach ($questions as $key => $question) {
$questionPoint = new QuestionPoint($question);
$questionPoint->isAnswerExists($question, $answer)
}
<form action="functions.php" method="post">
A4 <input type="radio" name="ans" value="ans1">
A3 <input type="radio" name="ans" value="ans2" /><br />
</form>
<form method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="Datei herunterladen!">
</form>
<form action="#" method="post" enctype="multipart/form-data">
A4 <input required type="radio" name="ans" value="ans1">
A3 <input type="radio" name="ans" value="ans2">
<input type="file" name="file">
<input type="submit" value="Загрузить">
</form>
if ($answer == "ans1") {
$answer = $_POST['ans'];
$answer = $_POST['ans'];
if ($answer == "ans1") {
if ($answer == "ans1") {
$answer = $_POST['ans'];
function make_upload($file){
// формируем уникальное имя картинки: случайное число и name
$name = mt_rand(0, 10000) . $file['name'];
copy($file['tmp_name'], 'Folder_A4_SW_EIN/' . $name); //ПАПКА ДОК
return true;
}
}else{
function make_upload($file){
// формируем уникальное имя картинки: случайное число и name
$name = mt_rand(0, 10000) . $file['name'];
copy($file['tmp_name'], 'img7/' . $name); //ПАПКА, КУДИ ПАДАЮТЬ ДОКУМЕНТИ
}
}
function make_upload($file, $folder)
{
// формируем путь + уникальное имя картинки
$name = $folder . DIRECTORY_SEPARATOR . uniqid(true) . $file['name'];
copy($file['tmp_name'], $name);
return true;
}
<?php
include_once('functions.php')
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Загрузить изображения на сервер</title>
</head>
<body>
<form action="#" method="post" enctype="multipart/form-data">
A4 <input required type="radio" name="ans" value="ans1">
A3 <input type="radio" name="ans" value="ans2">
<input type="file" name="file">
<input type="submit" value="Загрузить">
</form>
<?php
// если была произведена отправка формы
if(isset($_FILES['file']))
{
// проверяем, можно ли загружать изображение
$check = can_upload($_FILES['file']);
if($check === true)
{
$folder = $_POST['ans'] == 'ans1' ? 'Folder_A4_SW_EIN' : 'img7';
make_upload($_FILES['file'], $folder); // загружаем изображение на сервер
echo "<strong>Файл был успешно загружен!</strong>";
}
else
{
// выводим сообщение об ошибке
echo "<strong>$check</strong>";
}
}
?>
</body>
</html>
<?php
function can_upload($file)
{
// если имя пустое, значит файл не выбран
if($file['name'] == '')
return 'Вы не выбрали файл.';
/* если размер файла 0, значит его не пропустили настройки
сервера из-за того, что он слишком большой */
if($file['size'] == 0)
return 'Файл слишком большой.';
// разбиваем имя файла по точке и получаем массив
$getMime = explode('.', $file['name']);
// нас интересует последний элемент массива - расширение
$mime = strtolower(end($getMime));
// объявим массив допустимых расширений
$types = array('jpg', 'png', 'gif', 'bmp', 'jpeg', 'pdf', 'ppt', 'ods', 'dotx', 'docx', 'doc');
// если расширение не входит в список допустимых - return
if(!in_array($mime, $types))
return 'Недопустимый тип файла.';
return true;
}
function make_upload($file, $folder)
{
// формируем путь + уникальное имя картинки
$name = $folder . DIRECTORY_SEPARATOR . uniqid(true) . $file['name'];
copy($file['tmp_name'], $name);
return true;
}
$str = 'Исходный текст и {{}}.';
$dir = 'blog\flowers.txt';
$str = preg_replace_callback(
'~{{\K(?=}})~',
function()use($dir){
return file_get_contents($dir);
},
$str
);
echo $str;
$str = 'Исходный текст и {{}}.';
$dir = 'blog\flowers.txt';
$str = str_replace('{{}}', '{{'. file_get_contents($dir) . '}}', $str);
echo $str;