在 Mediawiki 中上传时调整图像大小

2024-03-06

理想情况下,我在上传到 mediawiki 的所有图像上调整大小并设置 maxWidth 和 maxHeight 后。

看完了文档 https://www.mediawiki.org/wiki/Manual:Image_administration在 mediawiki 中的各种不同页面中,我找不到任何内容表明您可以以任何方式编辑上传到基于 mediaWiki 的网站的图像

我编写一些自定义 PHP 没有问题,但事实是我不知道从哪里开始在 mediaWiki 中查找。

我的想法是: imagemagick 类似于this https://stackoverflow.com/questions/40007722/resize-with-imagemagick-with-a-maximal-width-height/40008440#40008440:

I think you need the > flag on the resize:

convert -size 300x200 xc:red   small.png
convert -size 1000x500 xc:blue large.png
Now convert them both to 800x600 with no flags:

convert small.png -resize 800x600 a.png   # 800x533
convert large.png -resize 800x600 b.png   # 800x400
Now with flags:

convert small.png -resize 800x600\> a.png # 300x200
convert large.png -resize 800x600\> b.png # 800x400

但同样,我看不到在图像上传后在哪里运行它来更改文件尺寸。

任何帮助都会很棒。


您可以尝试正确连接扩展程序:https://www.mediawiki.org/wiki/Manual:Hooks/UploadForm:BeforeProcessing https://www.mediawiki.org/wiki/Manual:Hooks/UploadForm:BeforeProcessing or https://www.mediawiki.org/wiki/Manual:Hooks/UploadVerifyFile https://www.mediawiki.org/wiki/Manual:Hooks/UploadVerifyFile

Edit :

这个例子要在LocalSettings.php的末尾添加一个标志,在上传文件的右上角:

$wgHooks['UploadForm:BeforeProcessing'][]=function(&$upload) { 
    $fictmp = $upload->mUpload->getTempPath();
    $newtmp = tempnam("/tmp", "tmp");
    $mylogo = "/path/to/my/logo/220px-SNice.svg.png";
    exec("composite -gravity NorthEast $mylogo $fictmp $newtmp" );
    copy($newtmp, $fictmp);
    unlink($newtmp);
    return true;
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Mediawiki 中上传时调整图像大小 的相关文章

  • 内部 while 循环不工作

    这是我项目网页上的代码片段 这里我想显示用户选择的类别 然后想显示属于该类别的主题 在那里 用户可以拥有多个类别 这没有问题 我可以在第一个 while 循环中打印所有这些类别 问题是当我尝试打印主题时 结果只显示一行 但每个类别中有更多主
  • 使用正则表达式提取两个短语之间的所有单词[重复]

    这个问题在这里已经有答案了 我正在尝试使用以下正则表达式提取两个短语之间的所有单词 b item W w W 0 2 1 one W w W 0 3 business b b item W w W 0 2 3 three W w W 0 3
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser
  • 在 PHP 中使用 Curl 将获取字段附加到 URL

    我可以使用 Curl 执行服务器端和客户端重定向 但无法通过 get 请求将 GET 字段附加到 URL 这是我的代码 post curl init curl setopt post CURLOPT URL url curl setopt
  • 如何将 php curl 中的 cookie 获取到变量中

    因此 其他公司的一些人认为 如果不使用soap xml rpc rest 或任何其他合理的通信协议 而是将所有响应作为cookie 嵌入标头中 那就太棒了 我需要从这个卷曲响应中将这些 cookie 作为数组取出 如果我不得不为此浪费大量的
  • 从前端更改记录顺序

    我在编写下一个功能时遇到问题 我希望用户能够重新排列记录并更改 display order 值 我使用 Jquery UI 的可拖放功能来促进这一点 我可以看到如何简单地交换 display order 值 但我想为一条记录设置一个显示顺序
  • PHP CSV VLookup

    我正在寻找一个 PHP 函数 它可以读取 CSV 文件并在第 1 列上执行 vlookup 以回显第 2 列中同一行的相关值 例如 如果 CSV 包含 Name Email John j email protected cdn cgi l
  • VB 脚本 Documents.Open 抛出 424 错误

    所以我有一个vbs脚本 Function test2open sSourceFile sPDFFile Dim wApp As Word Application Dim wDoc As Word Document logStream wri
  • Magento - 从观察者方法重定向客户

    在本次活动中checkout cart add product complete 我希望客户被重定向到外部网页http www example com 为此 我使用这段代码 它根本不起作用 public function moduleMet
  • 使用哪个正则表达式将此字符串转换为数组?

    从 mysql 中的地理空间列我得到以下字符串值 我想将其转换为数组 最终目标是将其转换为 geoJSON POLYGON 4 885838 52 388063 4 891061 52 388381 4 890973 52 382909 该
  • 第一个选项为空的选择框

    如何将选择框中的第一个选项设置为空值 我正在从数据库获取数据 我想将选项默认设置为 请选择一个选项 我找到 default gt Please select 不适用于 HTML5 必需属性 这确实有效 listOfValues 1 gt C
  • 检查用户是否连接到 Facebook,然后检查他是否喜欢某个页面

    有没有什么方法可以检查用户是否在我的外部页面上连接到 Facebook 而不让他们允许我的应用程序之一 同样的问题也适用于 检查用户是否喜欢某个页面 我检查了大约 20 个问题和 3 4 个教程 似乎所有问题都在讨论内部脚本 粉丝页面 应用
  • ResourceBundle 返回 NULL,没有引发任何错误

    对于国际化数据 与 ResourceBundle来自 PHP 的 intl 扩展的类 我运行了扩展 PHP 5 3 4 Windows 并使用以下命令创建了一个 dat 文件ICU 数据库定制器 http apps icu project
  • 将 Javascript 变量转换为 PHP 变量

    我想使用由 videoel getCurrentTime 函数返回给我的 javascript 变量 并将其转换为 php 变量 以便我能够将其添加到我的 SQL 插入查询中 例如 INSERT INTO tblData VALUES ph
  • “yum install php”需要 httpd-mmn = 20051115

    我从源代码安装了 httpd apache 2 4 6 现在我想安装 PHP 但yum install php吐出错误 Error Package php 5 3 3 40 el6 6 x86 64 updates Requires htt
  • 在 PHP 中将对象作为参数传递[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • CodeIgniter PHP 模型访问“无法找到您指定的模型”

    我一直在尝试为我正在构建的这个网站加载一些模型 但不知道什么原因 会带来如下错误 An Error Was Encountered Unable to locate the model you have specified logon mo
  • 如何将自托管 WordPress 和已安装的实时站点插件升级到最新可用版本而不遇到任何麻烦?

    我必须升级正在运行的 WordPress 网站的 WordPress CMS 和一些已安装的插件 并且我想要升级的一些插件之前已被修改以实现某些目标 http easycaptures com fs uploaded 288 9522279
  • 是否可以从插件扩展 Wordpress XMLRPC 接口?

    是否可以创建一个插件 在激活时向 XMLRPC 接口添加新的 功能 并处理其调用 简而言之 是的 您可以将函数添加为插件或添加到主题的functions php 文件中来处理XMLRPC 调用 您将需要以下部分 function xml a
  • 未找到 mysqli 类

    我用过mysqli连接到我的应用程序中的数据库 几天前一直运行良好 突然出现以下错误 致命错误 找不到类 mysqli 我用来连接数据库的行是 link new mysqli localhost uname password scripts

随机推荐

  • 当我们运行任何rails命令时,可以采取什么措施来修复以下错误:“`require_relative':无法加载此类文件”

    任何 Rails 命令对我都不起作用 我通过rvm安装了几个版本的ruby 我尝试安装所有版本的 Rails 它们确实安装成功 但对于所有版本 每当我运行时 我都会遇到以下错误any我的项目目录中的rails命令 rails new blo
  • NSMutableSet 包含重复项

    我有一个名为的自定义类card我需要从随机大小的卡片数组中创建一组 10 张独特的卡片 另外 我需要首先包含所有列入白名单的卡 以确保它们始终包含在内 我的问题是白名单中的卡片 并且只有白名单 可能会在集合中重复 随机添加的卡片永远不会重复
  • 在哪里可以找到 4.0 的 TPL 数据流版本?

    我正在寻找 NET 4 0 版本的 TPL 数据流库 Nuget 包有一个 4 0 版本的库 但它似乎针对 NET 4 5 我发现了对 4 0 版本的各种引用 例如在这个论坛中 http social msdn microsoft com
  • 将鼠标事件从 iframe 传播到托管文档

    我有一个覆盖整个 HTML 文档的 iframe 我想将点击和悬停事件传播回托管文档 我有什么选择 几周前 我被要求针对一个项目对此进行研究 这是可以做到的 这里有一个实际的例子 http www esqsoft com javascrip
  • 授权导入范围后是否可以浏览电子表格?

    我在谷歌驱动器上创建了几个电子表格 所以我是所有这些的所有者 我有一个电子表格 主 它作为主文件将数据导出到我与顾问团队共享的其他电子表格 活动报告 中 导出的数据使他们能够使用列表作为数据验证等 这有助于主文件分析他们的活动 无需清理数据
  • java中的数字格式

    如何在java中获取这些格式 Input 1223893 180703 80967 1461 700 Output 1 223 893 180 703 80 967 1 461 700 我总是会一一转换数字 这只是为了获得更多示例 你可以阅
  • 将 Dash 与 Websocket 结合使用

    使用 Dash 和 Websockets 构建实时仪表板的最佳方式是什么 我想在每次收到消息时更新图表 但我发现的唯一的事情是每 x 秒调用一次回调 如下例所示 import dash import dash core components
  • 下载 Google 网络历史记录的脚本

    如何编写脚本来下载 Google 网络历史记录 我知道关于 https www google com history https www google com history 供稿 https www google com history
  • Façade 是否利用了开闭原则?

    The 维基百科页面 http en wikipedia org wiki Open closed principle 截至今天2013 02 27 开闭原则说它是通过继承实现的 开闭原理这个名称有两种用途 这两种方法都使用继承来解决明显的
  • 创建iOS框架时未定义符号OBJC_CLASS_$

    我正在尝试构建一个 iOS 框架 为此 我使用了一些依赖项 并且单独构建框架项目时没有出现错误 当我在演示应用程序中使用 CocoaPods 安装时 出现以下错误Undefined symbol OBJC CLASS DFPRequest
  • 我需要对 Spacy NER 进行文本清理吗?

    我是新来的NER and Spacy 尝试找出需要进行哪些文本清理 如果有 看起来像我发现的一些例子修剪了前导和尾随空格 然后用开始 停止索引进行处理 我看到一个例子 那个人做了一堆清理工作 但他的准确性非常差 因为所有索引都搞乱了 澄清一
  • 如何将文本格式的时间戳转换为MS Excel的实际日期格式?

    文本中的时间戳为 Mon May 16 00 01 46 IST 2016 我应该如何将此字符串转换为 dd mm yyyy hh mm ss excel 时间格式 您将需要执行一系列字符串操作和日期时间函数 首先假设您的字符串位于 A1
  • 如何向 joint.js 元素添加 onclick 事件?

    我在 DAG 中有一个 joint js 元素 并且希望能够通过单击它来触发事件 我可以用 selector click 来做到这一点 但我想知道是否有一个 joint js 特定的处理方法 因为那样可能会更好 我认为 onclick 的候
  • 是否有可能使用 oAuth 制作 100% 基于浏览器的 javascript Twitter 客户端(根本没有后端)?

    是否有可能使用 oAuth 制作 100 基于浏览器的 javascript Twitter 客户端 根本没有后端 我不这么认为 您仍然需要一种安全的方式从 Twitter 获取访问密钥 并且您可能希望隐藏您的消费者密钥
  • 在生产中顺利重新部署 WAR?

    我想知道是否有一种 顺利的方式 将 Java WAR 重新部署到生产服务器 没有集群 没有 OSGi 我能想到的就是停止服务器 更新文件 重新启动服务器 我需要提前 10 分钟在网站上显示维护警告 你的方法是什么 首先 热部署并不总是有效
  • 在 WPF 中使用 MS ReportViewer

    我将通过将 ReportViewer 放置在 WindowsFormsHost 中来开始在 WPF 应用程序中使用 MS ReportViewer 这是正确的方法吗 设计报表的最佳方法是什么 因为您无法在设计时在 WindowsFormsH
  • Linux 中的内存区域标志:为什么需要 VM_WRITE 和 VM_MAYWRITE?

    Mel Gorman 的 Understanding the Linux Virtual Memory Manager 2007 年 这是本书章节链接 https www kernel org doc gorman html underst
  • 如何链接到标题并在 JavaScript 中单击链接时触发单击事件?

    我的页脚中有一堆链接 我想链接到页面上的不同标题并创建一个单击事件 以便关联的段落从display none to display block 换句话说 您会看到标题和带有链接的页脚 如演示 您单击页脚链接 屏幕应跳转到 链接到 关联的 h
  • 如何在 Azure Devops Pipeline 中使用 PowerShell 根据条件触发代理作业

    我有一个 PowerShell 如下所示 echo Hello World MyVariable Proceed echo MyVariable 我想做的事 If the 我的变量 is Proceed 只有并且只有那时 Agent Job
  • 在 Mediawiki 中上传时调整图像大小

    理想情况下 我在上传到 mediawiki 的所有图像上调整大小并设置 maxWidth 和 maxHeight 后 看完了文档 https www mediawiki org wiki Manual Image administratio